#!/usr/bin/perl use strict; use warnings; use 5.010; use Expect; my $command = "/usr/bin/command"; my @paramaters = qw(login); my $exp = new Expect(); $exp->raw_pty(1); $exp->log_file("./login.log"); $exp->log_stdout(1); $exp->spawn($command, @paramaters) or die "cannot spawn $command: $!\n"; $exp->expect(5, -re =>'API key here:'); sleep 5; $exp->clear_accum(); $exp->send("apikeyhere\r"); $exp->send("\n"); $exp->expect(5, -re => 'Validating key now...'); $exp->expect(5, -re => 'API key OK, logged in now.'); $exp->do_soft_close(); $exp->exitstatus(); print "logged in using expect\n";