linux和windows的定时执行计划

来源:互联网 发布:mac studded kiss试色 编辑:程序博客网 时间:2024/05/29 13:20

linux下:

使用crontab你可以在指定的时间执行一个shell脚本或者一系列Linux命令。例如系统管理员安排一个备份任务使其每天都运行


入门

# crontab –e

这样可以已编辑模式打开个人的crontab配置文件,然后加入一下这行:
0 0 * * * /home/linrui/XXXXXXXX.sh

这将会在每天凌晨运行 指定的.sh文件

Cron 各项的描述

以下是 crontab 文件的格式:

{minute} {hour} {day-of-month} {month} {day-of-week} {full-path-to-shell-script} 
o minute: 区间为 0 – 59 
o hour: 区间为0 – 23 
o day-of-month: 区间为0 – 31 
o month: 区间为1 – 12. 1 是1月. 12是12月. 
o Day-of-week: 区间为0 – 7. 周日可以是0或7.


Crontab 示例

1、在 凌晨00:01运行

1 0 * * * /home/linrui/XXXX.sh


2、每个工作日23:59都进行备份作业。

59 11 * * 1,2,3,4,5 /home/linrui/XXXX.sh   

或者如下写法:

59 11 * * 1-5 /home/linrui/XXXX.sh


3、每分钟运行一次命令

*/1 * * * * /home/linrui/XXXX.sh


4、每个月的1号 14:10 运行

10 14 1 * * /home/linrui/XXXX.sh


Crontab命令的选项

以下是 crontab 的有效选项:

crontab –e : 修改 crontab 文件. 如果文件不存在会自动创建。 
crontab –l : 显示 crontab 文件。 
crontab -r : 删除 crontab 文件。
crontab -ir : 删除 crontab 文件前提醒用户。


windows下:
AT命令是Windows XP中内置的命令,它也可以媲美Windows中的“计划任务”,而且在计划的安排、任务的管理、工作事务的处理方面,AT命令具有更强大更神通的功能。AT命令可在指定时间和日期、在指定计算机上运行命令和程序。 

  我们可以在“开始→运行”中输入AT命令,下面就来看看AT命令的一些实例分析。 

  1、定时关机 

  命令:at 21:00 ShutDown –S –T30 

  该命令运行后,到了21:00点,电脑会出现“系统关机”对话框,并默认30秒延时自动关机。 

  2、定时提醒 

  命令:at 12:00 Net Send 10.10.36 

  .122与朋友约会的时间到了,快点准备出发吧! 

  其中Net Send是Windows内部程序,可以发送消息到网络上的其他用户、计算机。10.10.36.122是本机电脑的IP地址。这个功能在Windows中也称作“信使服务”。 

  3、自动运行批处理文件 

  如果公司的数据佷重要,要求在指定的日期/时间进行备份,那么运行: 

  命令:at 1:00AM /Every:Saturday My_BackUp.bat 

  这样,在每个Saturday(周六)的早上1:00点,电脑定时启动My_BackUp.bat批处理文件。My_BackUp.bat是一个你自行编制的批处理文件,它包含能对系统进行数据完全备份的多条命令。 

  4、取消已经安排的计划 

  命令:at 5 /Delete 

  有时候,你已经安排好的计划可能临时变动,这样你可以及时地用上述命令删除该计划(5为指派给已计划命令的标识编号),当然,删除该计划后,可以重新安排。 


AT命令是一个win2000/xp/nt当中的一个命令,然而在我们的入侵当中是一个不可缺少的一项服务,他可以让程序中有一个程序在一定的时间里自动执行,从而操控计算机, 
下面说一下他的用法! 
AT 命令安排在特定日期和时间运行命令和程序。 
要使用 AT 命令,计划服务必须已在运行中。 
 
AT [//computername] [ [id] [/DELETE] | /DELETE [/YES]] 
AT [//computername] time [/INTERACTIVE] 
 [ /EVERY:date[,...] | /NEXT:date[,...]] "command" 

//computername 指定远程计算机。 如果省略这个参数, 
会计划在本地计算机上运行命令。 
id 指定给已计划命令的识别号。 
/delete删除某个已计划的命令。如果省略 id, 
计算机上所有已计划的命令都会被删除。 
/yes 不需要进一步确认时,跟删除所有作业 
的命令一起使用。 
time 指定运行命令的时间。 
/interactive 允许作业在运行时,与当时登录的用户 
桌面进行交互。 
/every:date[,...]每个月或每个星期在指定的日期运行命 
令。如果省略日期,则默认为在每月的 
本日运行。 
/next:date[,...] 指定在下一个指定日期(如,下周四)运 
行命令。如果省略日期,则默认为在每 
月的本日运行。 
"command"准备运行的 Windows NT 命令或批处理 
程序。 
下面说一下他的几个用法!! 
(Viliosn.exe 是一个程序) 
1,如果想让启动对方在指定时间里的某个程序,你可在命令行里打入: 
At //127.0.0.123:00 c:/winnt/system32/viliosn.exe 
提示:新加了一份作业, 作业id=1 
2.让对方的计算机在每周一和周二的23:00启动某个程序.那么你可以打入 
At //127.0.0.1 23:00 /every:一,二 c:/winnt/system32/viliosn.exe 
提示:新加了一份作业, 作业id=2 

3.删除对方计算机上作业id为1的任务 
At //127.0.0.1 1 /delete /yes 
4.删除所有的任务 
At //127.0.0.1 /delete 
提示:是否要删除所有的操作?然后我们打 Y