如何让crontab 按秒执行

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何让crontab 按秒执行相关的知识,希望对你有一定的参考价值。

参考技术A 如下脚本,每一分钟执行一次脚步,脚本会按我们设置好的间隔秒数,去执行for循环语句。
如果step设置为20,则每分钟执行3次。我们的间隔秒数,只能是60的整数倍数。

最后,在crontab任务列表中,添加上这个脚本的计划任务,即可。

linux crontab 定时任务执行

cron机制
        cron可以让系统在指定的时间,去执行某个指定的工作,我们可以使用crontab指令来管理cron机制

crontab参数
        -u:这个参数可以让我们去编辑其他人的crontab,如果没有加上这个参数的话就会开启自己的crontab

/etc/crontab文件和crontab -e命令区别

1、格式不同

前者

# For details see man 4 crontabs

# 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
# |  |  |  |  |
# *  *  *  *  * user-name command to be executed

后者

#50 1 * * *  command

2、使用范围

修改/etc/crontab这种方法只有root用户能用,这种方法更加方便与直接直接给其他用户设置计划任务,而且还可以指定执行shell等等,
crontab -e这种所有用户都可以使用,普通用户也只能为自己设置计划任务。然后自动写入/var/spool/cron/usename
3.服务重启
 1 /etc/init.d/crond restart
 2 service crond restart

1、crontab 会进行语法检查,vi 不会

2、听说有些 os 的 crond 不会重读配置,所以用 service 重启

crontab -e是某个用户的周期计划任务;/etc/crontab是系统的周期任务

1. crontab -e 与 /etc/crontab 修改语法格式不一样,后者多一个 user 指定

2. 不管用 crontab -e or 改 /etc/crontab 都不需要重新启动 crond 服务

01 22 * * * /sbin/shutdown -h now
执行的结果都是一样, 一般LINUX 都用shutdown -h now 也可以init 0
init 0在UNIX用得比较多,

关机需要root的身份在可以执行,
lz可以选取方法操作
方法1
换到root 的身份
su - root
crontab -e (按a增加下)
01 22 * * * /sbin/shutdown -h now   (或01 22 * * * /sbin/init 0)
保存退出即可以

方法2 vi /etc/crontab 在里面插入
01 22 * * * root   /sbin/shutdown -h now
或 01 22 * * * root   /sbin/init 0

 

另注:cron是命令的名称 crontab是配置cron启动文件的命令

以上是关于如何让crontab 按秒执行的主要内容,如果未能解决你的问题,请参考以下文章

Linux 定时任务 Crontab按秒执行

如何让crontab执行脚本后并且把日志输出到另一个文件?

crontab 如何立即执行

linux crontab 定时任务执行

Crontab 让linux定时执行shell脚本

使用crontab,让linux定时执行shell脚本