crontab 詳細(xì)用法 定時(shí)任務(wù)

小云
94
2023-09-07 16:56:25

crontab 是一個(gè)在 Linux 和 UNIX 系統(tǒng)中用來(lái)設(shè)置定時(shí)任務(wù)的命令。它允許用戶根據(jù)自己的需要在指定時(shí)間執(zhí)行特定的命令或腳本。

使用 crontab 命令需要以下步驟:

1. 查看當(dāng)前用戶的定時(shí)任務(wù)列表:`crontab -l`。
2. 編輯定時(shí)任務(wù)列表:`crontab -e`。
3. 在編輯器中添加或修改定時(shí)任務(wù)。每行代表一個(gè)定時(shí)任務(wù),格式為:`分鐘(0-59) 小時(shí)(0-23) 日(1-31) 月(1-12) 星期(0-7) 命令`。例如,如果要每天下午 4 點(diǎn)執(zhí)行一個(gè)腳本,可以添加一行:`0 16 * * * /path/to/script.sh`。
4. 保存并退出編輯器。
5. 查看定時(shí)任務(wù)是否生效:`crontab -l`。

以下是一些常見的 crontab 用法:

- `*` 表示任意值。例如,`* * * * * command` 表示每分鐘都執(zhí)行一次命令。
- `*/n` 表示每 n 個(gè)單位執(zhí)行一次命令。例如,`*/5 * * * * command` 表示每隔 5 分鐘執(zhí)行一次命令。
- `n` 表示具體的數(shù)值。例如,`30 9 * * 1-5 command` 表示周一至周五的每天上午 9:30 執(zhí)行一次命令。
- `n,m` 表示具體的多個(gè)數(shù)值。例如,`0 8,16 * * * command` 表示每天上午 8 點(diǎn)和下午 4 點(diǎn)執(zhí)行一次命令。
- `*/n` 和 `n,m` 可以結(jié)合使用。例如,`*/10 8-16 * * * command` 表示每天上午 8 點(diǎn)到下午 4 點(diǎn),每隔 10 分鐘執(zhí)行一次命令。

注意事項(xiàng):

- crontab 的時(shí)間是基于服務(wù)器的系統(tǒng)時(shí)間,而不是用戶的本地時(shí)間。
- crontab 需要一個(gè)運(yùn)行中的 cron 服務(wù)來(lái)執(zhí)行定時(shí)任務(wù)。在某些情況下,可能需要手動(dòng)啟動(dòng)或重啟 cron 服務(wù)。
- crontab 的定時(shí)任務(wù)不會(huì)自動(dòng)觸發(fā)錯(cuò)誤信息,如果命令或腳本執(zhí)行出錯(cuò),需要在命令中添加錯(cuò)誤處理或日志記錄。

0