簡體   English   中英

由cron作業啟動時,將打印python輸出重定向到文件

[英]Redirect print python output to a file, when started by a cron job

Cron行:

@reboot /usr/bin/python /home/pi/main.py & >> /home/pi/log.txt 2>&1
@reboot whoami >> log2.txt

兩個斯克里普茨都開始了!
這兩個文件均已創建!

在log2.txt中代表用戶pi。 但是log.txt保持為空。 當我通過控制台啟動python腳本時,python腳本的輸出將顯示在控制台上。

怎么了?輸出沒有寫入文件怎么了?

我也通過根嘗試了cronjob,結果相同

改成。

/ usr / local / python /home/pi/main.py 2>&1 >> /home/pi/log.txt

def log(who, type, debug_level, msg, ip = ""):
if (debug_level <= DEBUG):
    with open('/home/pi/log.txt','a+') as f:
        if (ip != ""):            
            f.write(strftime("%Y-%m-%d %H:%M:%S", gmtime()) + " - " + who + " - " + ip + ": " + type + msg + '\n')
        f.write(strftime("%Y-%m-%d %H:%M:%S", gmtime()) + " - " + who + " - " + type + msg + '\n')

我將直接在日志功能中寫入文件。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM