日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > linux >内容正文

linux

linux cron计划任务

發(fā)布時(shí)間:2023/12/20 linux 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux cron计划任务 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

$ crontab -e

例如:每天兩點(diǎn)鐘執(zhí)行

0 2 */1 * * /usr/bin/python /www/tbktsh/sendms.py?&> /dev/null?

01 * * * * root run-parts /etc/cron.hourly ?# 每小時(shí)執(zhí)行/etc/cron.hourly內(nèi)的腳本,"run-parts"這個(gè)參數(shù)是指執(zhí)行文件夾下的所有文件,不加此參數(shù)則需要給出明確的執(zhí)行腳本文件。

$ service crond restart ?or ?/etc/init.d/crond restart?# 重啟計(jì)劃任務(wù)

注意設(shè)置腳本文件的可執(zhí)行權(quán)限哦,不然可能會(huì)不能正常執(zhí)行。

centos7 執(zhí)行命令:

# yum install crontabs
/bin/systemctl restart crond.service #重啟服務(wù)
/bin/systemctl status crond.service #查看crontab服務(wù)狀態(tài)

?

第一列代表分鐘(0-59)

第二列代表小時(shí)(0-23)

第三列代表天(1-31)

第四列代表月(1-12)

第五列代表周(0-6) 0表示周日

“*”代表所有的取值范圍內(nèi)的數(shù)字。如果直接用“*”則相當(dāng)于“*/1”

“/”代表每的意思

“*/5″表示每5個(gè)單位

“-”代表從某個(gè)數(shù)字到某個(gè)數(shù)字

“,”分散的數(shù)字

?

# Example of job definition:

# .—————- minute (0 – 59)

# | ?.————- hour (0 – 23)

# | ?| ?.———- day of month (1 – 31)

# | ?| ?| ?.——- month (1 – 12) OR jan,feb,mar,apr …

# | ?| ?| ?| ?.—- day of week (0 – 6) (Sunday=0 or 7) OR sun,mon,tue,wed,thu,fri,sat

# | ?| ?| ?| ?|

# * ?* ?* ?* ?* ?command to be executed

?

如果已root身份直接使用crontab -e 則相當(dāng)于編輯/var/spool/cron/root文件,這屬于用戶級(jí)別計(jì)劃任務(wù)。

如果設(shè)置系統(tǒng)級(jí)別計(jì)劃任務(wù)則編輯/etc/crontab。

cron會(huì)定時(shí)每分鐘掃描下/var/spool/cron/文件夾內(nèi)的所有文件(每個(gè)用戶會(huì)有一個(gè)以用戶名命名的定時(shí)任務(wù)文件)和/etc/crontab文件。

用戶計(jì)劃任務(wù)與系統(tǒng)計(jì)劃任務(wù)的區(qū)別是給不同的人發(fā)送任務(wù)信息郵件,系統(tǒng)計(jì)劃任務(wù)是給系統(tǒng)管理員發(fā)送,用戶的計(jì)劃任務(wù)是給當(dāng)前用戶發(fā)送任務(wù)信息郵件。

1.直接用crontab命令編輯

  cron服務(wù)提供crontab命令來設(shè)定cron服務(wù)的,以下是這個(gè)命令的一些參數(shù)與說明:

  crontab -u //設(shè)定某個(gè)用戶的cron服務(wù),一般root用戶在執(zhí)行這個(gè)命令的時(shí)候需要此參數(shù)

  crontab -l //列出某個(gè)用戶cron服務(wù)的詳細(xì)內(nèi)容

  crontab -r //刪除沒個(gè)用戶的cron服務(wù)

  crontab -e //編輯某個(gè)用戶的cron服務(wù)

  比如說root查看自己的cron設(shè)置:crontab -u root -l

  再例如,root想刪除fred的cron設(shè)置:crontab -u fred -r

?

計(jì)劃日志相關(guān)

/var/log/cron 文件是所有計(jì)劃任務(wù)的執(zhí)行記錄

/var/log/cron.1 ?/var/log/cron.2 ?/var/log/cron.3 ?/var/log/cron.4 這幾個(gè)文件是歸檔文件

當(dāng)crond執(zhí)行任務(wù)失敗時(shí)會(huì)給用戶發(fā)一封郵件,如果crond發(fā)郵件失敗了,則可通過mail日志查看,可以使用tail -f /var/spool/mail/root 即可查看具體的錯(cuò)誤信息。

?

在crontab中的任務(wù)增加自己的日志,這樣出錯(cuò)后,比較容易看到原因,把錯(cuò)誤輸出和標(biāo)準(zhǔn)輸出都輸出到mylog.log中。

0 6 * * * /www/shservice/task.sh?>> /tmp/mylog.log 2>&1
0 23 */1 * * /usr/bin/python /data/www/pad_service/SX2Personalise/write.py &> /dev/null ? # 不輸出日志
0 23 */1 * * /usr/bin/python /data/www/pad_service/ClearTiYanRecord/updates.py >/var/log/crontab-tiyan_updates.log 2>&1 ? # 指定錯(cuò)誤日志輸出位置

crontab中的輸出配置
crontab中經(jīng)常配置運(yùn)行腳本輸出為:>/dev/null 2>&1,來避免crontab運(yùn)行中有內(nèi)容輸出。
shell命令的結(jié)果可以通過‘> ’的形式來定義輸出
/dev/null 代表空設(shè)備文件
> 代表重定向到哪里,例如:echo "123" > /home/123.txt
1 表示stdout標(biāo)準(zhǔn)輸出,系統(tǒng)默認(rèn)值是1,所以">/dev/null"等同于"1>/dev/null"
2 表示stderr標(biāo)準(zhǔn)錯(cuò)誤
& 表示等同于的意思,2>&1,表示2的輸出重定向等同于1
那么重定向輸出語句的含義:
1>/dev/null 首先表示標(biāo)準(zhǔn)輸出重定向到空設(shè)備文件,也就是不輸出任何信息到終端,不顯示任何信息。
2>&1 表示標(biāo)準(zhǔn)錯(cuò)誤輸出重定向等同于標(biāo)準(zhǔn)輸出,因?yàn)橹皹?biāo)準(zhǔn)輸出已經(jīng)重定向到了空設(shè)備文件,所以標(biāo)準(zhǔn)錯(cuò)誤輸出也重定向到空設(shè)備文件。

?

補(bǔ)充知識(shí):anacron 可以喚醒關(guān)機(jī)期間的工作任務(wù)

轉(zhuǎn)載于:https://www.cnblogs.com/weiok/p/5233704.html

總結(jié)

以上是生活随笔為你收集整理的linux cron计划任务的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。