我試圖將命令的值輸出到文件。我試過了:將命令的輸出重定向到python中的文件,怎麼做
threaddump() >> /dir/newdir/newfile.log
它不工作。
那麼,如何將命令的輸出重定向到目錄中的文件? Python的版本是2.3.4。
我試圖將命令的值輸出到文件。我試過了:將命令的輸出重定向到python中的文件,怎麼做
threaddump() >> /dir/newdir/newfile.log
它不工作。
那麼,如何將命令的輸出重定向到目錄中的文件? Python的版本是2.3.4。
您的方法存在誤解。 Python不是一個shell,而是一個簡單的解釋器。一個shell允許啓動一個程序,並且它可以總是[1]爲啓動的程序提供一些上下文數據,比如環境變量,當前工作目錄,還有其標準IO流(stdin,stdout,stderr),用於重定向到文件。由於任何Python函數與調用者在相同的進程中運行,它可以使用相同的全局對象,其中包括流。
這留給你一些方法來解決你的問題:
暫時重定向sys.stdout的一個文件。如果改變被調用的代碼不是一個好的選擇,這是特別有用的,否則我寧願不這樣做,因爲它會影響整個過程。
返回從函數的數據,並將其打印在呼叫者的站點中的文件。
將文件傳遞給函數打印到的函數。
我知道的唯一例外是MS Windows CE,它沒有環境變量,工作目錄或通過標準IO流的方式。
您是否嘗試使用常規文件操作寫入文件? – msvalkon
您可以使用>&command $ mypymodule.py>&log.file – Greg