一、linux輸出到指定文件
在Linux系統中,我們可以使用大於號(>)將控制台輸出內容重定向到指定文件中。例如:
command > logfile.txt
這條命令會將command命令的輸出內容重定向到名為logfile.txt的文件中。
二、nohup 2>&1指定文件
nohup命令可以讓我們在終端退出後,進程仍然繼續運行。但通常我們需要將程序的輸出內容保存到文件中以便後續查看。為了將nohup輸出到指定文件,可以結合使用大於號和2>&1符號。具體來講:
nohup command > logfile.txt 2>&1 &
這條命令會將command命令的標準輸出和標準錯誤都重定向到名為logfile.txt的文件中。其中,2>&1表示將標準錯誤輸出重定向到標準輸出,&表示命令在後台運行。
三、nohup21指定文件
有時候,我們想要將nohup的輸出內容保存到不同的文件中,比如將標準輸出和標準錯誤分別保存到不同的文件中。這時我們可以用nohup21命令來實現目的。具體來講:
nohup command 1>stdout.log 2>stderr.log &
這條命令中,1表示標準輸出,2表示標準錯誤輸出,>表示將輸出內容重定向到指定文件中。
四、nohup命令輸出日誌
nohup命令也可以直接輸出日誌文件。具體來講:
nohup command > logfile.txt & tail -f logfile.txt
這條命令會將command命令的輸出內容重定向到名為logfile.txt的文件中,並使用tail -f命令實時查看logfile.txt文件的內容。
五、案例代碼
下面是一個示例代碼,演示了如何將Python程序的輸出內容重定向到指定文件中。
import sys
import time
f = open('output.txt', 'w')
for i in range(10):
sys.stdout.write('Output to console: %d\n' % i)
sys.stdout.flush()
f.write('Output to file: %d\n' % i)
f.flush()
time.sleep(1)
f.close()
這段代碼首先打開名為output.txt的文件,然後在循環中向控制台和output.txt文件中輸出內容,並使用flush()函數強制刷新緩衝區。最後關閉文件。運行這段代碼,並執行nohup命令將輸出內容重定向到指定文件中,即可實現將程序的輸出內容保存到指定文件中。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/248139.html