ubuntu下使用crontab


創建crontab任務

參考:https://www.cnblogs.com/Icanflyssj/p/5138851.html

3. crontab常用的幾個命令格式

crontab -l //顯示用戶的crontab文件的內容

crontab -e //編輯用戶的crontab文件的內容

crontab -r //刪除用戶的crontab文件

-------

在第一次使用crontab -e,會要求選擇編輯器,我選擇是vim.basic

編輯文件,內容如下

root@ubuntu:/var/log# crontab -e
# Edit this file to introduce tasks to be run by cron.
# 
# Each task to run has to be defined through a single line
# indicating with different fields when the task will be run
# and what command to run for the task
# 
# To define the time you can provide concrete values for
# minute (m), hour (h), day of month (dom), month (mon),
# and day of week (dow) or use '*' in these fields (for 'any').# 
# Notice that tasks will be started based on the cron's system
# daemon's notion of time and timezones.
# 
# Output of the crontab jobs (including errors) is sent through
# email to the user the crontab file belongs to (unless redirected).
# 
# For example, you can run a backup of all your user accounts
# at 5 a.m every week with:
# 0 5 * * 1 tar -zcf /var/backups/home.tgz /home/
# 
# For more information see the manual pages of crontab(5) and cron(8)
# 
# m h  dom mon dow   command
* * * * * /home/xwdreamer/eclipse-workspace/RELEASED_V2_10_20180331/iotkit-embedded/output/release/bin/linkkit-example

 

 其他間隔執行時間設定

每分鍾執行      * * * * *
每五分鍾執行 */5 * * * * 每小時執行 0 * * * * 每天執行 0 0 * * * 每周執行 0 0 * * 0 每月執行 0 0 1 * * 每年執行 0 0 1 1 *

 

 

 

 

日志服務

參考:https://blog.csdn.net/ggz631047367/article/details/50185425

ubuntu默認沒有開啟cron日志記錄 
1. 修改rsyslog 
sudo vim /etc/rsyslog.d/50-default.conf 
cron.* /var/log/cron.log #將cron前面的注釋符去掉 
2.重啟rsyslog 
sudo service rsyslog restart 
3.查看crontab日志 
less /var/log/cron.log

注意:這里必須重啟日志服務,重啟以后使用less查看可能還沒有日志,需要等任務執行以后才能看到日志。

 

查看cron日志

vim /var/log/cron.log 

在日志中找到

No MTA installed, discarding output 

 

解決方案:將日志輸出到指定文件

*/5 * * * * /home/xwdreamer/iotkit/linkkit-example_INV/linkkit-example_INV > linkkit-example_INV_temp.log

 

完整如下

root@ubuntu:~# crontab -e
# Edit this file to introduce tasks to be run by cron.
# 
# Each task to run has to be defined through a single line
# indicating with different fields when the task will be run
# and what command to run for the task
# 
# To define the time you can provide concrete values for
# minute (m), hour (h), day of month (dom), month (mon),
# and day of week (dow) or use '*' in these fields (for 'any').# 
# Notice that tasks will be started based on the cron's system
# daemon's notion of time and timezones.
# 
# Output of the crontab jobs (including errors) is sent through
# email to the user the crontab file belongs to (unless redirected).
# 
# For example, you can run a backup of all your user accounts
# at 5 a.m every week with:
# 0 5 * * 1 tar -zcf /var/backups/home.tgz /home/
# 
# For more information see the manual pages of crontab(5) and cron(8)
# 
# m h  dom mon dow   command
*/5 * * * * /home/xwdreamer/iotkit/linkkit-example_INV/linkkit-example_INV > linkkit-example_INV_temp.log 
*/5 * * * * /home/xwdreamer/iotkit/linkkit-example_penguan/linkkit-example_penguan > linkkit-example_penguan_temp.log

 

最后日志會被輸出到當前賬戶下的目錄,比如當前這個文件被輸出到/root目錄下

root@ubuntu:/home/xwdreamer/iotkit# find / -name linkkit-example_INV_temp.log
find: ‘/run/user/1000/gvfs’: Permission denied
/root/linkkit-example_INV_temp.log
find: ‘/mnt/hgfs’: Protocol error

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM