2013-10-09 461 views
0

我想運行運行nohup的多個命令行參數和重定向標準輸入

python argument1.txt argument2.txt >logfile.log 

與nohup的,但我沒有得到任何輸出,因爲它重定向輸入到零。 我希望它首先接受命令行參數,並以nohup方式工作。

nohup python argument1.txt argument2.txt >logfile.log 

當我運行上述命令我得到以下輸出。 nohup:忽略輸入和追加... 這意味着被忽略的參數。在手冊上說,我必須做一些輸入重定向,我不知道如何。

+0

您提到在標題中重定向標準輸入,但在問題中沒有提及它,這是什麼問題?您應該能夠運行: 'nohup python argument1.txt argument2.txt logfile.log 2>&1'不應該有'nohup'(也不會有'nohup.out'文件)的噪音,標準輸入應該來自指定的文件,標準輸出和標準錯誤應該到日誌文件中 –

回答

0

nohup的重定向到的nohup.out

如果你希望得到的nohup的外觀和感覺,並重定向到另一個文件(S)做這樣的:

(python argument1.txt argument2.txt >logfile.log 2>logfile.err &) & 

這不掛斷,當你登出。 (您可以將stderr重定向到相同的日誌文件,通過替換2>logfile.err2>&1

+0

(1)nohup不會在stdout和stderr都沒有去終端的時候重定向到nohup.out(2)'nohup'確實安排忽略HUP信號在運行程序之前修正(2)你需要在'python'命令前面添加'trap''HUP;',但根本沒有必要這麼做。標準輸入,問題標題提到,但身體沒有。 –

+0

當我運行上面的命令,我得到以下輸出。 nohup:忽略輸入和追加... 這意味着被忽略的參數。在手冊上說,我必須做一些輸入重定向,我不知道如何。 – user14372