全部,
我想在expect腳本中執行unix語句。unix語句輸出進程的rsize值。我以前沒有編程過。 這是我的代碼:從預期腳本獲取unix'top'命令輸出
#!/usr/bin/expect
set some_host "some host"
set Mycmd "top -l 1 -stats pid,rsize,command | grep Process_Name| awk '{print \$2};'"
spawn telnet localhost $some_host
expect "login:"
send "myDevice\r"
expect "Password:"
send "$password\r"
expect "\$"
send "$Mycmd\r"
當我執行這個,我沒有得到任何輸出。什麼是執行unix語句的正確語法?我如何獲得這個工作,以便獲得正確的rsize值作爲輸出結果?
什麼版本的Unix?登錄並鍵入'man top'並查看命令。另外,在serverfault.com上試試這個 – EdH 2012-02-24 21:34:44
我在Mac OSX上(10.7.3) – smokinguns 2012-02-24 21:35:49
然後你的最高命令是好的(至少在我的OS X上) - 嘗試刪除$ 2上的\ – EdH 2012-02-24 21:44:55