2011-05-26 63 views
0

您好我有以下期待命名a.exp預計產卵不執行

#!/usr/bin/expect 
spawn cat a.txt 

其中A.TXT包含字符串文本的下面一行的腳本

Hello World

下一個我做到了可執行使用下面的命令

chmod +x a.exp 

現在,我運行它如下

./a.exp 

輸出我得到的是如下

spawn cat a.txt 
,另一方面

如果我使用的下面的腳本

puts [exec cat a.txt] 

代替

spawn cat a.txt 

它打印a.txt文件的內容。你可以幫我用spawn執行它嗎?謝謝!

回答

4

你還沒有告訴它從生成的程序中讀取任何東西。如果我使用這個版本的a.exp它得到什麼,我認爲是正確的輸出:

#!/usr/bin/expect 
spawn cat a.txt 
expect "\n";  # Wait for a newline 

如果你真的只是想在其他程序中寫出不圖回報發送任何一件事來拉,你用最後一行,而不是等待文件結束-:

expect eof 

兩個生產的正是這種輸出當我測試:

 
spawn cat a.txt 
Hello World