0
我是期待perl編程的新手,必須編寫一些腳本來自動完成一些任務。基本上我需要telnet到unix機器,發出一些unix命令並檢查一些輸出。 我已經寫了一個小腳本telnet,但我對如何檢查unix命令的狀態有疑問。期望perl問題
#!/usr/bin/perl
use Expect;
$timeout=10;
my $exp = Expect->spawn("telnet test-b -l regress")
or die "Cannot spawn telnet: $!\n";;
my $spawn_ok;
$foo1=$exp->expect($timeout, 'Password:');
print "######Received Password prompt\n";
$exp->send("MaRtInI\n");
print "######Sent password\n";
$foo1=$exp->expect($timeout, '%');
print "######Received root prompt\n";
$exp->send("cd /var/tmp");
我懷疑這裏如何檢查cd命令是否真的成功,因爲不是cd /var/tmp
如果我給cd /var/temp12
(這不 - 不存在的),我看到了同樣的結果。我如何檢查通過cd發送的unix命令是否成功?
嗨...感謝您的幫助,但可以請你解釋一下,這是如何工作的,我的理解。具體來說,換檔命令的目的是什麼? – user496934
恩,對不起。我使用它來獲取腳本的第一個參數,所以用法是'perl script.pl/tmp'。有關更多信息,請參閱'perldoc -f shift',默認情況下它使用'@ ARGV'或'@ _'。 – Dallaylaen