2012-10-15 17 views
0

我開始了一個項目。在該指令,它是寫,我們可以使用此命令行測試我們的程序:如何重定向`cat`來模擬linux中的用戶輸入

貓的test.txt> test.py

但我沒有輸出。根據我的理解,它應該給我一個輸出。

test.txt文件看起來像:

1 
3 
4 
2 
5 
6 
7 
1 
1 
8 
9 
3 
4 
5 
1 
-1 

而且test.py文件看起來像:

for i in range(16): 
    var=raw_input("type something : ") 
    print var 

我這個除外命令行test.txt文件的內容重定向到運行時的test.py文件。

我已閱讀關於cat命令的文檔。

請問您能幫我嗎?

換句話說,cat命令應該如何模擬用戶?我想我必須改變我的python文件中的東西。

預先感謝, MFF

+5

你剛剛吹走了test.py ...你想用「|」而不是「>」 – sjr

+2

你試過搜索嗎? http://stackoverflow.com/questions/9708484/python-use-input-from-another-command?rq=1 – muratgu

+0

是的,就是這樣。對不起,我無法自己形象化:)。謝謝 ! –

回答

6

這裏的問題是,你要cat test.txt | test.py而非>|將一個命令(cat test.txt)的輸出發送到另一個命令(test.py)的輸入,而>將輸出發送到一個文件(這可能意味着您用test.txt的內容覆蓋了test.py )。

+0

謝謝。這現在更加清晰:)! –