Linux篇

  Linux下创建定时执行任务可使用crontab,系统默认自带crontab,在Ubuntu 16.04下进行演示说明。

1.crontab 基本使用

#/etc/init.d/cron status # 查看状态
#/etc/init.d/cron start  # 启动crontab服务
#/etc/init.d/cron stop  # 停止crontab服务
#/etc/init.d/cron reload # 重载定时任务
#crontab -l   # 查看定时任务列表

2.开启日志

  需修改配置文件。

#sudo vim /etc/rsyslog.d/50-default.conf
...
cron.* /var/log/cron.log    #将cron前面的注释符去掉
...

  重启rsyslog:

#sudo service rsyslog restart

3.设置定时执行任务

  本次演示定时执行自己写的一个Python脚本,bash脚本或其它的应该也是类似。需要注意的是,最好指定脚本的绝对路径,如果发现仍无法解决,可先切换到脚本路径下执行。不过,应该是OK的。

 ... 0 0 * * * python /home/kdv/Desktop/sync-opensource/sync.py # 每天定时执行脚本
 or
 @daily cd /home/kdv/Desktop/sync-opensource;python /home/kdv/Desktop/sync-opensource/sync.py

 0 0 1 * mon python /home/kdv/Desktop/sync-opensource/sync.py # 每周定时执行脚本
 or
 @weekly cd /home/kdv/Desktop/sync-opensource;python /home/kdv/Desktop/sync-opensource/sync.py

  按需要设置每天or每周定时执行,更多请参考链接中的内容。

  设置好任务之后,我们可以查看下任务列表,并需要重载任务。

#crontab -l   # 可以查看我们添加的任务
#/etc/init.d/cron reload # 重载定时任务
#vim /var/log/cron.log # 查看定时任务产生的日志

4.测试

  图中是每5分钟执行脚本为例进行测试。

  左侧:脚本在运行过程中,会生成以当前时间命名的日志文件,记录脚本在执行过程中的输出结果。

  右侧:crontab的日志文件,可以看到,每5分钟,会定时执行一次脚本。

 Windows篇

   Windows系统没有crontab命令,但是Windows系统有跟crontab命令比较接近的命令:schtasks 命令。在Win10上操作。

1.帮助文档

  使用如下命令查看schtasks的帮助文档,以便更多的了解该命令。

C:\Users\Administrator>schtasks /"htmlcode">
C:\Users\Administrator>schtasks

文件夹: 任务名     下次运行时间  模式
======================================== ====================== ===============
Adobe Acrobat Update Task  2019/9/2 11:00:00 就绪
SogouImeMgr    N/A   就绪
sync-opensource    2019/9/2 11:30:00 就绪
WpsUpdateTask_Administrator  2019/9/2 9:23:46 就绪...

3.创建定时执行任务

  命令行下键入schtasks /create /"htmlcode">

/TN taskname 以路径\名称形式指定对此计划任务进行唯一标识的字符串。
/TR taskrun 指定在这个计划时间运行的程序的路径和文件名。
 例如: C:\windows\system32\calc.exe
/SC schedule 指定计划频率。
 ==> 创建计划任务“EventLog”以开始运行 wevtvwr.msc
 SCHTASKS /Create /TN EventLog /TR wevtvwr.msc /SC ONEVENT
 如每分钟、每小时、每天、每星期
 MINUTE: 1 到 1439 分钟;
 HOURLY: 1 - 23 小时;
 DAILY: 1 到 365 天;
 WEEKLY: 1 到 52 周;
/ST starttime 指定运行任务的开始时间。
 时间格式为 HH:mm (24 小时时间),例如 14:30 表示2:30 PM。如果未指定 /ST,则默认值为当前时间。/SC ONCE 必需有此选项。

3.1创建任务

  我们创建一个名为"sync-opensource",定期执行某个bat脚本,在每天的11:30执行。创建该任务的命令如下。

schtasks /create /tn "sync-opensource" /tr "E:\PycharmProjects\opensource\sync.bat" /sc daily /st 11:30

4其它

4.1查找指定任务

  如查找我们上面创建的sync-opensource任务。

C:\Users\Administrator>schtasks -query | find "sync-opensource"
sync-opensource    2019/9/2 11:30:00 就绪

4.2删除任务

  可以使用如下命令,删除指定的任务。

schtasks /delete /tr taskname

总结

以上所述是小编给大家介绍的Linux Windows下设置定时执行任务的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

标签:
linux,定时执行任务,linux,执行任务

免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
狼山资源网 Copyright www.pvsay.com

评论“Linux Windows下设置定时执行任务的方法”

暂无“Linux Windows下设置定时执行任务的方法”评论...

稳了!魔兽国服回归的3条重磅消息!官宣时间再确认!

昨天有一位朋友在大神群里分享,自己亚服账号被封号之后居然弹出了国服的封号信息对话框。

这里面让他访问的是一个国服的战网网址,com.cn和后面的zh都非常明白地表明这就是国服战网。

而他在复制这个网址并且进行登录之后,确实是网易的网址,也就是我们熟悉的停服之后国服发布的暴雪游戏产品运营到期开放退款的说明。这是一件比较奇怪的事情,因为以前都没有出现这样的情况,现在突然提示跳转到国服战网的网址,是不是说明了简体中文客户端已经开始进行更新了呢?