1.expect 關鍵字
send: 向程序傳送字串,用於模擬使用者的輸入。注意一定要加\r回車
expect: 從程序接收字串
spawn: 啟動程序(由spawn啟動的程序的輸出可以被expect所捕獲)
interact: 使用者互動
2.如何向expect指令碼傳入引數
set 《變數名稱》 [lindex $ar** ]
1注意下標從0開始,即0是第乙個引數,不是指令碼名稱,這個和shell不同
#!/usr/bin/expect
set host [lindex $ar** 0]
set port [lindex $ar** 1]
set user [lindex $ar** 2]
set passwd [lindex $ar** 3]
3.程式中執行expect不成功
不要使用interact,如果在終端裡執行expect,加上interact是沒有問題的,但是在程式中執行命令,則不行;
spawn scp -r -p $port /root/dash/tool $user@$host:/tmp/
expect "*password:"
send "$passwd\r"
#interact
expect eof
exit
參考《linux expect 簡介和使用例項》
python 下執行wget傳入引數
參考 參考 python中執行shell命令的4種方式 決定使用subprocess方法呼叫shell cmd wget o name url 因為該命令需要放在引號中,所以 name 與 url 被直接使用,不能夠獲取正確的變數值 使用shell不可行 wget o name url 所以修改 c...
利用getopt long 為程式傳入引數
man getopt long,得到其宣告如下 int getopt long int argc,char const argv,const char optstring,const struct option longopts,int longindex 函式中的argc和argv通常直接從mai...
Ubuntu 啟動C程式時傳入引數
c程式一般有乙個main函式,在ubuntu環境下通過手動命令啟動c程式,會尋找程式入口main 啟動時可以通過命令引數,傳入指令。具體例子如下。include include int main int argn,char argv 編譯後的程式 輸入命令 命令啟動程式,後接 dev ttyusb0...