Linux crontab和开机自启脚本

Linux crontab和开机自启脚本

由于测试机经常会出现断电的情况,则需要在断电重启后,运行一些脚本,起到初始化的作用

这里采用crontab命令的方式进行设置

一、crontab基本用法

1.1 cron服务

cron是一个linux下 的定时执行工具,可以在无需人工干预的情况下运行作业。

如下命令,因为linux版本不同,关键字可能为:1、crond,2、cron

service crond start //启动服务

service crond stop //关闭服务

service crond restart //重启服务

service crond reload //重新载入配置

service crond status //查看服务状态

1.2 基本语法

crontab (选项) (参数)

1.2.1 选项

-e:编辑该用户的计时器设置;

-l:列出该用户的计时器设置;

-r:删除该用户的计时器设置;

-u<用户名称>:指定要设定计时器的用户名称。

1.3 crontab文件的含义

minute: 表示分钟,可以是从0到59之间的任何整数。hour:表示小时,可以是从0到23之间的任何整数。day:表示日期,可以是从1到31之间的任何整数。month:表示月份,可以是从1到12之间的任何整数。week:表示星期几,可以是从0到7之间的任何整数,这里的0或7代表星期日。command:要执行的命令,可以是系统命令,也可以是自己编写的脚本文件。在以上各个字段中,还可以使用以下特殊字符星号():代表所有可能的值,例如month字段如果是星号,则表示在满足其它字段的制约条件后每月都执行该命令操作。逗号(,):可以用逗号隔开的值指定一个列表范围,例如,“1,2,5,7,8,9”中杠(-):可以用整数之间的中杠表示一个整数范围,例如“2-6”表示“2,3,4,5,6”正斜线(/):可以用正斜线指定时间的间隔频率,例如“0-23/2”表示每两小时执行一次。同时正斜线可以和星号一起使用,例如/10,如果用在minute字段,表示每十分钟执行一次。

二、示例

2.1 每分钟执行一次command

* * * * * command

2.2 每小时的第3和20分钟执行一次command

3,20 * * * * command

2.3 在凌晨3点到晚上20点的每小时第20分钟执行一次command

20 3-20 * * * command

2.4 每隔两天的凌晨3点到晚上20点每小时的第20分钟执行一次command

20 3-20 */2 * * command

2.5 每周一的凌晨3点到晚上20点每小时的第20分钟执行一次command

20 3-20 * * 1 command

2.6 每隔一个半小时执行一次command

通过设置两个定时任务可以实现每一个半小时的定时任务。在设定时两个任务的开始时间刚好错开90分钟,每个任务每3小时执行一次即可。

20 0-23/3 * * * command

50 1-23/3 * * * command

注:两个任务中command为同一个脚本或命令

三、开机重启脚本

1、首先,在/home下创建一个shell脚本-self_start.sh

并通过chmod 777 赋予权限

● 如果这里不配置权限,在权限不足的情况下,重启后不会启动改sh脚本,且不会报错

2、通过vim,把脚本编写如sel_start.sh中

3、执行命令,进入编辑页面

crontab -e

通过@reboot 命令,后面填入需要开机自启的脚本路径

4、crontab -e 相关命令

在编辑页面的最下方可以看到相关命令

在我们执行完第三行周,执行Ctrl+x,退出编辑模式

提示:是否保存当前文件。

按Y键保存,N键不保存,C键取消

5、重新载入配置

运行命令

service crond reload

6、查看设置结果

crontab -l

7、设置成功,重启生效

如果脚本不生效,请查看sh文件的执行权限和脚本编写的正确性

参考资料:https://blog.csdn.net/qq_31964019/article/details/109101708

🎈 相关推荐

手机QQ怎么转让群主给指定的人?手机QQ转让群主给指定的人教程
欧洲各国如何应对难民潮:支持与挑战并存
beat365英国在线体育

欧洲各国如何应对难民潮:支持与挑战并存

📅 11-04 👀 8568
哪里借钱最快最好通过?实测5个靠谱平台与避坑指南