在线时间:8:00-16:00
迪恩网络APP
随时随地掌握行业动态
扫描二维码
关注迪恩网络微信公众号
linux定时运行命令 1.命令简介 每个用户都有各自不同的计划任务列表,用各自的帐户登录后运行 复制代码 代码如下:crontab -l 就可查看到各任务的计划任务情况,使用下列命令可以修改自己的计划任务 复制代码 代码如下:crontab -e 每次添加完任务后,一定记得重新启动crond服务,不然不会生效 复制代码 代码如下:service crond restart 2.实例 下面为一计划任务的样例 复制代码 代码如下:#每个月的4号和每个礼拜的礼拜一到礼拜三的早上11点 0 11 4 * mon-wed date 上面这句的意思是“每个月的4号和每个礼拜的礼拜一到礼拜三的早上11点显示时间”,你把date改成你想执行的命令,再把执行的时间改了,就可以形成一个定时执行命令了 复制代码 代码如下:#每分钟执行一次 */1 * * * * date #在/root/run_sh/下面写一个shell脚本,命名为run.sh,内容如下 #!/bin/sh echo hello > /root/Hello.txt 然后运行crontab -e命令,写入 复制代码 代码如下:*/1 * * * * /root/run_sh/run.sh(一定要绝对路径) 保存退出后执行service crond restart,过一分钟后你就会在/root下看到Hello.txt文件。 复制代码 代码如下:#定时运行java程序,写一命名为run.sh的shell脚本,内容如下 #!/bin/sh cd /root/javaExe/ java TestCron/Test 后运行crontab -e 写入 */1 * * * * /root/run_sh/run.sh(一定要绝对路径) 后重启crond服务。 3.空格之间的参数意义如下 分钟 小时 天 月 星期 要执行的命令 Crontab是一个很方便的在unix/linux系统上定时(循环)执行某个任务的程序 复制代码 代码如下:service crond start 如果还需要在系统启动十加载其他服务,可以继续加上其他服务的启动命令。 复制代码 代码如下:service mysqld start 基本用法: 1. crontab -l 2. crontab -d 3. crontab -e (solaris5.8上面是 crontab -r) 4. crontab filename 复制代码 代码如下:#MIN HOUR DAY MONTH DAYOFWEEK COMMAND #每天早上6点10分 10 6 * * * date #每两个小时 0 */2 * * * date (solaris 5.8似乎不支持此种写法) #晚上11点到早上8点之间每两个小时,早上8点 0 23-7/2,8 * * * date #每个月的4号和每个礼拜的礼拜一到礼拜三的早上11点 0 11 4 * mon-wed date #1月份日早上4点 0 4 1 jan * date 补充:在使用crontab的时候,要特别注意的是运行脚本中能够访问到的环境变量和当前测试环境中的环境变量未必一致,一个比较保险的做法是在运行的脚本程序中自行设置环境变量(export) (2)上传到/opt目录 (3)运行命令 复制代码 代码如下:#MIN HOUR DAY MONTH DAYOFWEEK COMMAND #每天早上6点 106* * * date #每两个小时 0*/2* * * date #晚上11点到早上8点之间每两个小时,早上部点 0 23-7/2,8* * * date #每个月的4号和每个礼拜的礼拜一到礼拜三的早上11点 0 11 4* mon-wed date #1月份日早上4点 0 4 1 jan* date 范例 lark:~>crontab-1 列出用户目前的crontab. #MIN HOUR DAY MONTH DAYOFWEEK COMMAND 10 6* * * date 0*/2* * * date 0 23-7/2,8 * * * date lark:~> 基本格式 : 第1列表示分钟1~59 每分钟用*或者 */1表示 crontab文件的一些例子: 复制代码 代码如下:30 21 * * * /usr/local/etc/rc.d/lighttpd restart 上面的例子表示每晚的21:30重启lighttpd 。</p> <p>45 4 1,10,22 * * /usr/local/etc/rc.d/lighttpd restart 上面的例子表示每月1、10、22日的4 : 45重启lighttpd 。</p> <p>10 1 * * 6,0 /usr/local/etc/rc.d/lighttpd restart 上面的例子表示每周六、周日的1 : 10重启lighttpd 。</p> <p>0,30 18-23 * * * /usr/local/etc/rc.d/lighttpd restart 上面的例子表示在每天18 : 00至23 : 00之间每隔30分钟重启lighttpd 。</p> <p>0 23 * * 6 /usr/local/etc/rc.d/lighttpd restart 上面的例子表示每星期六的11 : 00 pm重启lighttpd 。</p> <p>* */1 * * * /usr/local/etc/rc.d/lighttpd restart 每一小时重启lighttpd</p> <p>* 23-7/1 * * * /usr/local/etc/rc.d/lighttpd restart 晚上11点到早上7点之间,每隔一小时重启lighttpd</p> <p>0 11 4 * mon-wed /usr/local/etc/rc.d/lighttpd restart 每月的4号与每周一到周三的11点重启lighttpd</p> <p>0 4 1 jan * /usr/local/etc/rc.d/lighttpd restart 一月一号的4点重启lighttpd |
请发表评论