用 crontab 安排作業排程後不動,該如何找錯?

當然,你可以寫在程式裡面,在進行的當下就產出文字檔、報表,或甚至圖片檔都行。

但有時候我們並不想要有這麼多的記錄檔,或是我們在測試的時候,程式都會動,但排入 crontab 之後,它就不動或是產出錯誤訊息了,就像我在另一篇裡面寫到的問題,中文編碼與 crontab 產生衝突,這是你怎麼測都測不出的吧。

這時候可以用一個很簡單的方法,也就是在你的 crontab 語法後面,加上一個 > 然後指派一個空的 .txt 檔給它,它就會把你程式裡面寫的 print 印在裡面,或是如果有錯誤,也會顯示在檔案裡。

像是這樣(舉例):

0 */12 * * *  python3 /Users/YourName/Desktop/xxx.py > Users/YourName/Desktop/xxx.txt

它就會把當次執行的內容 (如果你裡面有一些 print 之類的,或是錯誤)存入 xxx.txt檔裡面。

當然這招不只是 crontab 時候能用,平常在終端機執行檔案的時候也能用,只是如果直接在終端機執行檔案,它就會顯示結果,有點多此一舉就是了.

用 crontab 安排作業排程後不動,該如何找錯? 有 “ 1 則迴響 ”

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com 標誌

您的留言將使用 WordPress.com 帳號。 登出 /  變更 )

Google photo

您的留言將使用 Google 帳號。 登出 /  變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 /  變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 /  變更 )

連結到 %s