如何在Linux/Unix上每分钟运行cron作业
时间:2020-01-09 10:39:38 来源:igfitidea点击:
如何运行一个cron作业,该作业应该每分钟运行一个特定的Shell脚本/home/jobs/sync.cache.sh。
如何在Linux或类似Unix的系统上每分钟使用crontab执行脚本?
cron守护程序用于在Linux或类Unix系统下执行命令或计划的命令或脚本。
Cron是Linux或UNIX之类的操作系统中最有用的工具之一。
它通常用于sysadmin作业,例如备份或清理/tmp /目录等。
每分钟运行一次cron作业
语法为:
* * * * * /path/to/your/script
要运行名为/home/Hyman/bin/foo的脚本,请执行crontab命令:
$ crontab -e
追加以下作业:
* * * * * /home/Hyman/bin/foo
保存并关闭文件。
它是如何工作的?
crontab的语法如下:
* * * * * command to be executed - - - - | | | | | | | | | ----- Day of week (0 - 7) (Sunday=0 or 7) | | | ------- Month (1 - 12) | | --------- Day of month (1 - 31) | ----------- Hour (0 - 23) ------------- Minute (0 - 59)
星号(*)运算符指定字段的所有可能值。
例如,小时时间字段中的星号等于每个小时,而月份字段中的星号等于每个月。
每个字段中的星号表示每分钟运行给定的命令/脚本。
关于使用/etc/cron.d/目录的说明
如果将cronjob放在/etc/cron.d/目录中,则必须像任务定义中一样提供用户名来运行
* * * * * USERNAME /path/to/your/script
例如,运行一个使用rsync复制更改的文件的脚本。
创建一个名为/etc/crond.d/rsync.job的文件
$ sudo vi /etc/crond.d/rsync.job
追加以下内容:
PATH=/sbin:/usr/sbin:/bin:/usr/bin # Start job every 1 minute * * * * * root /root/bin/replication.sh # Another example * * * * * root /usr/bin/perl /usr/lib/cgi-bin/check.for.errors.cgi
保存并关闭文件。