今天突然被要求写脚本,让linux定时执行一些任务。网上一些教程看起来对类似我这种小白不是很友好,于是根据网上的一些教程,我自己研究了1天。成功执行了定时任务。所以在这里写一个面向Linux小白的教程。
首先写一个脚本,进到Linux根目录,用vim命令新建一个脚本文件,后缀是.sh
制作一个简单的打印
执行chmod 755 hello.sh给该脚本添加权限,之后尝试执行该脚本
如果出现打印内容则脚本没问题。
之后就是就是使用crontab创建定时任务
基本语法
crontab -l 查看当前用户的定时任务
crontab -e 编辑当前用户的定时任务
crontab -u 用户名,当前登录用户不用填写用户名
crontab -r 删除crontab文件
我们crontab -e 命令编辑当前用户的定时任务
这是编辑内容
解释一下
*/ 后面一共五个星号 分别代表 分 时 号 月 周
星号后面的sh代表用什么执行,这里用的是shell脚本,写sh就行了。
后面跟上./hello.sh
./代表的是路径,我这里是根目录下的脚本,就这样就ok了。
写完之后按Esc 然后输入:wq回车就保存了该文件
启动、关闭、重启、重新载入的命令
/sbin/service crond start //启动服务
/sbin/service crond stop //关闭服务
/sbin/service crond restart //重启服务
/sbin/service crond reload //重新载入配置
这里我们启动服务
/sbin/service crond start
他会输出这么一句话
You have mail in /var/spool/mail/root
告诉你在这路径下会有log
你需要进去看看log
使用cat /var/spool/mail/root看日志文件
日志文件中我们可以看到,这里1分钟打印了一次hello,证明定时任务执行成功。
本人自己也是linux小白,有什么讲的不对的地方可以提出来。我也怕误导大家。但是我这样子操作是成功了的,希望我的经验能给到大家帮助。