如何在 Linux 上使用 cron 定時器
cron 定時器是一個可以按照計劃自動運行命令的工具。定時器作業稱為 cronjob,創建於 crontab
文件中。這是用戶自動操作電腦的最簡單也是最古老的方法。
創建一個 cronjob
要創建一個 cronjob,你可以使用 crontab
命令,並添加 -e
選項:
$ crontab -e
這將使用默認的文本編輯器打開 crontab
。如需指定文本編輯器,請使用 EDITOR
[環境變數](https://opensource.com/sites/default/files/styles/image-full-size/public/cron-splash.png?itok=AoBigzts "Cron expression"):
$ EDITOR=nano crontab -e
Cron 語法
如需調度一個 cronjob,你需要提供給計算機你想要執行的命令,然後提供一個 cron 表達式。cron 表達式在命令調度時運行:
- 分鐘(0 到 59)
- 小時(0 到 23, 0 代表午夜執行)
- 日期(1 到 31)
- 月份(1 到 12)
- 星期(0 到 6, 星期天是 0)
星號 (*
) 代表的是「每一個」。例如,下面的表達式在每月每日每小時的 0 分鐘運行備份腳本:
/opt/backup.sh 0 * * * *
下面的表達式在周日的凌晨 3:30 運行備份腳本:
/opt/backup.sh 30 3 * * 0
簡寫語法
現代的 cron 支持簡化的宏,而不是 cron 表達式:
@hourly
在每天的每小時的 0 分運行@daily
在每天的 0 時 0 分運行@weekly
在周日的 0 時 0 分運行@monthly
在每月的第一天的 0 時 0 分運行
例如,下面的 crontab
命令在每天的 0 時運行備份腳本:
/opt/backup.sh @daily
如何停止一個 cronjob
一旦你開始了一個 cronjob,它就會永遠按照計劃運行。想要在啟動後停止 cronjob,你必須編輯 crontab
,刪除觸發該作業的命令行,然後保存文件。
$ EDITOR=nano crontab -e
如需停止一個正在運行的作業,可以 使用標準的 Linux 進程命令 來停止一個正在運行的進程。
它是自動的
一旦你編寫完 crontab
,保存了文件並且退出了編輯器。你的 cronjob 就已經被調度了,剩下的工作都交給 cron 完成。
via: https://opensource.com/article/21/7/cron-linux
作者:Seth Kenlon 選題:lujun9972 譯者:perfiffer 校對:turbokernel
本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive