預計,每次產卵命令,我寫了本地主機上使用ssh命令,模擬終端的腳本。因此考慮下面的場景,我有一個使用期望模塊perl腳本(說script.pl),以及有這種類型的如何推出新的終端使用Expect Perl模式的perl
$ssh = Expect->spawn("ssh -Y $loginname\@$systemname")
所以這裏的問題是...我使用的是終端的兩個命令執行script.pl,我的代碼有兩個spawn命令。我注意到在用於執行script.pl的終端內啓動了兩個spawn命令。但我想要兩個新的終端用於兩個生成命令。所以這裏應該有三個用於script.pl的終端,其中兩個用於script.pl中的每個spawn命令。
是否有實現從單一的Perl腳本使用預計兩個新的終端的任何方式?
終端不會從SSH轉發輸出/輸入由期望處理的僞TTY,所以這是大多無用。 – salva
是的,但這應該是顯而易見的 - 我對Expect並不熟悉,它是否需要這樣做?我想,如果在命令完成時用命令調用大多數終端將會返回。但是如果OP想要自動化一個命令,這樣你就可以看到它在一個產生的終端中發生,可能這樣做是不可能的。但是,您可以啓動終端-e「運行Expect的腳本」) – delicateLatticeworkFever
Expect用於自動執行需要用戶交互的任務,例如,可能會將密碼傳遞給ssh。否則,它是沒有意義的使用期望在所有的,一個可以只運行'系統(「終端」,「-e」,$ ssh_cmd)' – salva