0
我想在一個循環中執行一個安裝程序,並且每次它必須啓動安裝程序。但是一旦循環被執行一次,它會拋出下面的錯誤並停止腳本。有沒有辦法阻止它?如何在一個循環中產生一個安裝程序
my $exp = Expect->new;
my $path="/opt/sample/Installer.pl";
for(my $i=0;$i<$a;$i++){
$exp->spawn($path) or die "Cannot spawn $path: $!\n";
..
..
..
}
錯誤:
Cannot reuse an object with an already spawned command at Installer.pl line 52
期待文件說:
另外請注意,你不能重複使用的對象已經產生了命令,即使該命令已退出。對不起,但你必須分配一個新的對象。
有沒有辦法解決這個問題。
你還沒有提到你正在使用哪個模塊,所以任何人如何回答你的問題,除了猜測?另外,你的代碼中有一個沒有引號的字符串,這意味着你的代碼不能編譯。永遠不要這樣做:始終剪切並粘貼代碼並確保它能正常工作,並且最好能夠複製您的問題。 – TLP
抱歉。我從perl使用Expect模塊並嘗試在循環中觸發安裝。我在我的代碼中引用了字符串。我忘了在這裏做。將udpate它。 – Leo
如果你在循環中移動了'my $ exp = Expect-> new;',你的問題可能會解決。 – TLP