crontab周期任务
名称解释:
cron来源于希腊语 chronos(χρόνος),原意是时间。(引用自维基百科) tab全称是table,表
常用参数:
-e 编辑crontab文件
-l 显示crontab内容
-r 删除crontab内容
常用操作:
systemctl start crond.service // 启动cron服务
systemctl stop crond.service // 停止cron任务
systemctl restart crond.service // 重启cron任务
systemctl reload crond.service // 重载cron配置
systemctl status crond.service // 查看服务状态
cron文件存放位置:
[root@xxx test]# find / -name cron.
/root/pm2/node_modules/cron.
/var/log/cron.
/var/spool/cron.
/etc/selinux/targeted/active/modules/100/cron.
/var/spool/cron 下面是所有用户的crontab任务,每个任务已创建者命名.
crontab格式:
例子:
42 0 * * * "/root/.acme.sh"/acme.sh --cron --home "/root/.acme.sh" > /dev/null
格式:
分 时 日 月 周 命令
前5个是时间,第六个是执行的命令
第1列表示分钟1~59 每分钟用*或者 */1表示
第2列表示小时1~23(0表示0点)
第3列表示日期1~31
第4列表示月份1~12
第5列标识号星期0~6(0表示星期天)
第6列要运行的命令
时间列的几个特殊的符号"*"、"/"和"-"、","
* 代表所有的取值范围内的数字
"/"代表每的意思,"/5"表示每5个单位
"-"代表从某个数字到某个数字
","分开几个离散的数字
创建cron脚本:
touch test.cron
vim test.cron
* * * * * echo 'hello world!' >> ~/test.txt
crontab test.cron
crontab -l 查看定时任务是否成功或者检测/var/spool/cron下是否生成对应cron脚本
systemctl reload crond.service
at一次性任务
格式:
at+时间
at HH:MM YYYY-MM-DD
atq 查询计划任务
atrm 删除计划任务