linux定时任务详解_shell脚本中写定时任务

linux定时任务详解_shell脚本中写定时任务Linux定时任务一、首先查看是否安装了crontab[root@master ~]# rpm -qa |grep crontabcrontabs-1.11-6.20121102git.el7.noarch 出现crontabs-1.11-6.20121102git.el7.noarch代表已经安装

Linux定时任务
一、首先查看是否安装了crontab
[root@master ~]# rpm -qa |grep crontab
crontabs-1.11-6.20121102git.el7.noarch

出现crontabs-1.11-6.20121102git.el7.noarch代表已经安装
若未安装则执行下面

1.yum install vixie-cron
2.yum install crontabs
vixie-cron软件包是cron的主程序;
crontabs软件包是用来安装、卸装、或列举用来驱动 cron 守护进程的表格的程序

crontab服务启动与关闭
service crond start //启动服务
service crond stop //关闭服务
service crond restart //重启服务
service crond reload //重新载入配置

service crond status //查看状态

chkconfig crond on //设置开机自动启动crond服务:

chkconfig –list crond //开机级别的crond服务运行情况 ,2、3、4、5级别开机会自动启动crond服务
chkconfig crond off//取消开机自动启动crond服务:

crontab文件格式:

linux定时任务详解_shell脚本中写定时任务

*            *        *       *         *
minute hour day month week command

分 时 天 月 星期 命令
minute: 表示分钟,可以是从0到59之间的任何整数。

hour:表示小时,可以是从0到23之间的任何整数。

day:表示日期,可以是从1到31之间的任何整数。

month:表示月份,可以是从1到12之间的任何整数。

week:表示星期几,可以是从0到7之间的任何整数,这里的0或7代表星期日。

command:要执行的命令,可以是系统命令,也可以是自己编写的脚本文件。

“*”代表取值范围内的数字 例如month字段如果是星号,则表示每月都执行该命令操作
“/”代表每,可以指定时间的间隔频率,例如“0-23/2”表示每两小时执行一次。同时正斜线可以和星号一起使用,例如*/10,如果用在minute字段,表示每十分钟执行一次。
“-”代表从某个数字到某个数字 例如“2-6”表示“2,3,4,5,6”
“,”分开几个离散的数字 例如,“1,3,5,7,9”

查询当前用户定时任务或删除当前用户定时任务
crontab -l –列出当前用户定时任务

crontab -r –删除当前用户定时任务(删除所有,除非不再使用,否则没必要使用

写个定时任务例子
例:每隔一分钟向test.txt写入一个”hello”的定时任务
1.先创建一个test.txt文件 touch test.txt

2.再创建一个test.sh vim test.sh
写入:
echo “hello”>>/usr/local/test/test.txt

2.1你不像上面这样写也行(看下面3的第二种)

然后esc, :wq退出

[root@master test]# ll test.sh
-rw-r–r– 1 root root 50 9月 3 19:28 test.sh
[root@master test]# chmod a+x test.sh
[root@master test]# ll test.sh
-rwxr-xr-x 1 root root 50 9月 3 19:28 test.sh

chmod a+x test.sh –给test.sh脚本执行赋权
ll test.sh –查看脚本是否有执行权限
3.写定时任务
crontab -e
*/1 * * * * /usr/local/test/test.txt

第二种避免了写test.sh脚本(*/1 * * * * echo “hello”>>/usr/local/test/test.txt)

然后过一会cat test.txt查看文件内容

每次写完定时任务退出之后都会有一个提示:
定时任务:crontab: installing new crontab
注意:用crontab -e 编辑的定时任务三分钟之内是不会执行的,所以在测试的时候,至少时间后推三分钟!

 

脚本设置
设置脚本
命令行输入:crontab -e 进入后编写想要执行的脚本
*/1 * * * * /usr/….. 每一分钟执行一次
*/5 * * * * /usr/….. 每五分钟执行一次
0 */1 * * * /usr/….. 每小时执行一次
30 1 * * * /usr/….. 每天1:30执行一次
0 23-7/2,8 * * * 晚上11点到早上8点之间每两个小时和早上八点
0 11 4 * 1-3 每个月的4号和每个礼拜的礼拜一到礼拜三的早上11点
22 4 * * 0 每星期(周日凌晨4:22)执行
42 4 1 * * 每月(1号凌晨4:42)去执行

如果还是不知道每几分钟,几小时,几天…怎么写的看下面直接点击下面
在线查看工具(自己去试几下)

相关定时任务例子(不会结合工具自行查看)

要还是不会,回家种田吧…
种田都需要技术…

如果看的条理不清晰请点击链接到本人CSDN:https://blog.csdn.net/qq_43278189/article/details/120088263

今天的文章linux定时任务详解_shell脚本中写定时任务分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/53527.html

(0)
编程小号编程小号
上一篇 2023-08-30
下一篇 2023-08-30

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注