# chap2 - crontab搭配使用log ###### tags: `crontab` - edited:2020.02.05 --- - 相關文章可以參考[Crontab教學 - 總覽](https://hackmd.io/0UWA1D-LRTOkx-EH4xnWQA?edit) ## Intro - **crontab** 在執行任務時,由於是在背後執行,故沒辦法知道執行的結果。此時可以善用*輸出log*的方式, 來幫助我們了解程式運行的狀況。 ### 如何把crontab 執行任務時的output message給輸出到特定的檔案 #### 一般來說, 設定crontab的任務如下: :::info min hour day month day-of-the-week [**YOUR_TASK**] [**FILE_MODE** + **YOUR_LOG_FILE_PATH** + **2>&1**] ::: - **YOUR_TASK**: >- 任何指令或程式都可以,我們以`python`為使用範例 >- ex: 假設我有一個python的程式`/home/myProj/helloWorld.py`, 要讓crontab順利執行, >你可以輸入 `cd /home/myProj/ && /usr/bin/python3 helloWorld.py` - **FILE_MODE**: >1. `>` : 單鍵號, 如果檔案已存在, 直接複寫開一個新的 >2. `>>`: 雙鍵號, 檔案若存在, 繼續往下寫(append模式) - **YOUR_LOG_FILE_PATH**: >- 預計要輸出訊息的`檔案位置`, - **2>&1** >- 如果你的程式碼有重要的訊息用`print`輸出,ex: `python3 helloWorld.py`, 必須要加入`2>&1`. >- `2>&1`的意思是將 standard error(2>) 重新導向standard output(&1),如此就可以順利將程式中的`print`匯集到log中 ## Reference - [Crontab Log: How to Log the Output of My Cron Script](https://www.thegeekstuff.com/2012/07/crontab-log/) -
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up