2017-01-13 30 views
2

比方說,我有類似下面的腳本,我不能編輯它Python記錄:發送StreamHandler中從命令行文件

import logging 

logger = logging.getLogger('simple_example') 
logger.setLevel(logging.DEBUG) 

handler = logging.StreamHandler() 

logger.addHandler(handler) 

logger.debug('debug log') 
logger.info('info log') 
logger.warning('warning log') 
logger.error('error log') 

後來我把這個腳本:

python log_example.py > file.log 

但它並未填充file.log文件,而是在控制檯中輸出日誌。

問:有沒有一種辦法,儘管日誌記錄配置處理程序StreamHandler中,還是輸出登錄到命令行文件?

回答

2

嘗試使用&>語法,如Pijnappel對this question的回答。這將所有輸出(而不僅僅是stdout)重定向到文件。

python log_example.py &> file.log 
+0

omg,就是這樣,謝謝它的工作! – eLRuLL