设为首页 收藏本站
查看: 899|回复: 0

[经验分享] 转:[windows]DOS批处理添加任务计划

[复制链接]

尚未签到

发表于 2017-6-29 10:12:13 | 显示全部楼层 |阅读模式
  自动创建每周运行一次的计划任务
  创建计划任务可用at,schtasks命令,schtasks提供了很多参数
  命令schtasks
  SCHTASKS /Create [/S system [/U username [/P [password]]]]
  [/RU username [/RP password]] /SC schedule [/MO modifier] [/D day]
  [/M months] [/I idletime] /TN taskname /TR taskrun [/ST starttime]
  [/RI interval] [ {/ET endtime | /DU duration} [/K] ]
  [/SD startdate] [/ED enddate] [/IT] [/Z] [/F]
  方法:



@echo off
schtasks /create /tn "Del-7_log" /ru system /tr D:\aizzw\del-7.bat /sc weekly /d mon /st 01:00
start %systemroot%\tasks
echo 创建成功,请检查...
pause
del /f Create.bat
  参数解释:
  schtasks /create 指的是创建计划任务
  /tn 指定计划任务的名称
  /ru 指定运行该批处理的账号,如果去掉该参数则默认为当前账户运行,会提示输入密码。
  一个计划任务所用的账号如果密码变动后该批处理就不再会运行成功
  所以我这里使用系统账号system,密码就省略不写。
  /rp   指定账号的密码
  /tr 指定程序所在路径,这里为指定要执行的批处理存放路径。
  /sc 为指定运行的周期
  /d 为日期.这里mon为英文单词缩写,周一
  /st 为运行时间
  start %systemroot%\tasks 这一句只是为了弹出计划任务窗口查看创建成功与否
  del /f Create.bat 为创建完成后自动删除创建该计划任务的批处理
  schtasks命令详细解释可以参见微软的
  cmd 创建任务计划 schtasks ,at ,attrib
  schtasks / at /attrib




Microsoft Windows XP [版本 5.1.2600]

(C) 版权所有 1985-2001 Microsoft Corp.

C:\Documents and Settings\Administrator>schtasks /?

SCHTASKS /parameter [arguments]



描述:

    允许管理员创建、删除、查询、更改、运行和中止

    本地或远程系统上的计划系统。替代 AT.exe。



参数列表:

    /Create         创建新计划任务。

    /Delete         删除计划任务。

    /Query          显示所有计划任务。

    /Change         更改计划任务属性。

    /Run            立即运行计划任务。

    /End            中止当前正在运行的计划任务。

    /?              显示帮助/用法。



示例:

    SCHTASKS

    SCHTASKS /?

    SCHTASKS /Run /?

    SCHTASKS /End /?

    SCHTASKS /Create /?

    SCHTASKS /Delete /?

    SCHTASKS /Query  /?

    SCHTASKS /Change /?



C:\Documents and Settings\Administrator>schtasks /create /?



SCHTASKS /Create [/S system [/U username [/P password]]]

    [/RU username [/RP password]] /SC schedule [/MO modifier] [/D day]

    [/I idletime] /TN taskname /TR taskrun [/ST starttime] [/M months]

    [/SD startdate] [/ED enddate]



描述:

    启用管理员以在本地或远程系统上

    创建计划任务。



参数列表:

    /S           system            指定要连接到的远程

                                   系统。如果省略这个

                                   系统参数,默认是本地

                                   系统。



    /U           username          指定命令执行的

                                   用户上下文。



    /P           password          指定给定用户上下文

                                   的密码。



    /RU          username          指定任务运行的用户

                                   帐户 (用户上下文)。

                                   对于系统帐户,有效值是 "",

                                   "NT AUTHORITY\SYSTEM" 或

                                   "SYSTEM"。



    /RP          password          指定用户密码。

                                   要提示输入密码,值

                                   必须是 "*" 或没有。

                                   密码将不会对系统帐户

                                   起作用。



    /SC          schedule          指定计划频率。

                                   有效计划任务: MINUTE, HOURLY,

                                   DAILY, WEEKLY, MONTHLY, ONCE,

                                   ONSTART, ONLOGON, ONIDLE。



    /MO          modifier          改进计划类型以允许

                                   更好地控制计划重复

                                   周期。有效值列于

                                   下面"Modifiers" 部分中。



    /D           days              指定该周内运行任务的

                                   日期。有效值: MON, TUE,

                                   WED, THU, FRI, SAT, SUN

                                   和对 MONTHLY 计划的 1 - 31

                                   (某月中的日期)。



    /M           months            指定一年内的某月。

                                   默认是该月的第一天。

                                   有效值: JAN, FEB, MAR,

                                   APR, MAY, JUN, JUL, AUG, SEP, OCT,

                                   NOV, DEC。



    /I           idletime          指定运行一个已计划的

                                   ONIDLE 任务之前要等待

                                   的空闲时间。

                                   有效值范围: 1 到 999 分钟。



    /TN          taskname          指定唯一识别这个计划

                                   任务的名称。



    /TR          taskrun           指定这个计划的任务

                                   运行的程序的路径和

                                   文件名。

                                   示例: C:\windows\system32\calc.exe



    /ST          starttime         指定运行这个任务的时间。

                                   时间格式是 HH:MM:SS (24

                                   小时时间) 例如,14:30:00

                                   是下午 2:30 PM。



    /SD          startdate         指定第一次运行这个

                                   任务的日期。格式为

                                   "yyyy/mm/dd"。



    /ED          enddate           指定上次运行这个

                                   任务的日期。格式为

                                   "yyyy/mm/dd"。



    /?                             显示帮助/用法。



修改者: 按计划类型的 /MO 开关的有效值:

    MINUTE:  1 到 1439 分钟。

    HOURLY:  1 到 23 小时。

    DAILY:   1 到 365 天。

    WEEKLY:  1 到 52 周。

    ONCE:    无修改者。

    ONSTART: 无修改者。

    ONLOGON: 无修改者。

    ONIDLE:  无修改者。

    MONTHLY: 1 到 12,或

             FIRST, SECOND, THIRD, FOURTH, LAST, LASTDAY。



示例:

    SCHTASKS /Create /S system /U user /P password /RU runasuser

             /RP runaspassword /SC HOURLY /TN rtest1 /TR notepad

    SCHTASKS /Create /S system /U domain\user /P password /SC MINUTE

             /MO 5 /TN rtest2 /TR calc.exe /ST 12:00:00

             /SD 2001/12/30 /ED 2001/12/30 /RU runasuser /RP

    SCHTASKS /Create /SC MONTHLY /MO first /D SUN /TN game

             /TR c:\windows\system32\freecell

    SCHTASKS /Create /S system /U user /P password /RU runasuser

             /RP runaspassword /SC WEEKLY /TN test1 /TR notepad.exe

    SCHTASKS /Create /S system /U domain\user /P password /SC MINUTE

             /MO 5 /TN test2 /TR c:\windows\system32\notepad.exe

             /ST 18:30:00 /RU runasuser /RP *

    SCHTASKS /Create /SC MONTHLY /MO first /D SUN /TN cell

             /TR c:\windows\system32\freecell /RU runasuser

  示例: http://hi.baidu.com/__lyc/item/30505d902c348a4ef1421591
    ==> 在远程机器 "ABC" 上创建计划任务 "doc",
        该机器每小时在 "runasuser" 用户下运行 notepad.exe。

  SCHTASKS /Create /S ABC /U user /P password /RU runasuser
                 /RP runaspassword /SC HOURLY /TN doc /TR notepad

  ==> 在远程机器 "ABC" 上创建计划任务 "accountant",
        在指定的开始日期和结束日期之间的开始时间和结束时间内,
        每隔五分钟运行 calc.exe。

  SCHTASKS /Create /S ABC /U domain\user /P password /SC MINUTE
                 /MO 5 /TN accountant /TR calc.exe /ST 12:00 /ET 14:00
                 /SD 06/06/2006 /ED 06/06/2006 /RU runasuser /RP userpassword

  ==> 创建计划任务 "gametime",在每月的第一个星期天
        运行“空当接龙”。

  SCHTASKS /Create /SC MONTHLY /MO first /D SUN /TN gametime
                 /TR c:\windows\system32\freecell

  ==> 在远程机器 "ABC" 创建计划任务 "report",
        每个星期运行 notepad.exe。

  SCHTASKS /Create /S ABC /U user /P password /RU runasuser
                 /RP runaspassword /SC WEEKLY /TN report /TR notepad.exe

  ==> 在远程机器 "ABC" 创建计划任务 "logtracker",
        每隔五分钟从指定的开始时间到无结束时间,
        运行 notepad.exe。将提示输入 /RP
        密码。

  SCHTASKS /Create /S ABC /U domain\user /P password /SC MINUTE
                 /MO 5 /TN logtracker
                 /TR c:\windows\system32\notepad.exe /ST 18:30
                 /RU runasuser /RP

  ==> 创建计划任务 "gaming",每天从 12:00 点开始到
        14:00 点自动结束,运行 freecell.exe。

  SCHTASKS /Create /SC DAILY /TN gaming /TR c:\freecell /ST 12:00
                 /ET 14:00 /K
    ==> 创建计划任务“EventLog”以开始运行 wevtvwr.msc
        只要在“系统”通道中发布事件 101

  SCHTASKS /Create /TN EventLog /TR wevtvwr.msc /SC ONEVENT
                 /EC System /MO *[System/EventID=101]
    ==> 文件路径中可以加入空格,但需要加上两组引号,
        一组引号用于 CMD.EXE,另一组用于 SchTasks.exe。用于 CMD
        的外部引号必须是一对双引号;内部引号可以是一对单引号或
        一对转义双引号:
        SCHTASKS /Create
           /tr "'c:\program files\internet explorer\iexplorer.exe'
            \"c:\log data\today.xml\"" ...



//创建任务计划mysqlBAK.job

C:\Documents and Settings\Administrator>schtasks /create /sc daily /tn mysqlBAK

/tr c:\mysqlbak.bat /st 02:00

错误: 无效 starttime 值 (时间格式应该是 hh:mm:ss)。

键入 "SCHTASKS /CREATE /?" 了解用法信息。



C:\Documents and Settings\Administrator>schtasks /create /sc daily /tn mysqlBAK

/tr c:\mysqlbak.bat /st 02:00:00

任务将创建于当前登录的用户名("SKY-20121118NSN\Administrator")下。

请输入 SKY-20121118NSN\Administrator 的密码: ***



警告: 计划任务 "mysqlBAK" 已经创建,但可能没有运行,因为无法设置帐户信息。

//查看任务计划

C:\Documents and Settings\Administrator>schtasks



任务名                               下次运行时间             状态

==================================== ======================== ===============

mysqlBAK                             02:00:00, 2013-1-9

SogouImeMgr                          系统启动时               正在运行



C:\Documents and Settings\ Administrator >attrib /?



显示或更改文件属性。



ATTRIB [+R | -R] [+A | -A ] [+S | -S] [+H | -H] [[drive:] [path] filename] [/S [

/D]]



  +   设置属性。

  -    清除属性。

  R   只读文件属性。

  A   存档文件属性。

  S   系统文件属性。

  H   隐藏文件属性。

  [drive:][path][filename]

      指定要处理的文件属性。

  /S  处理当前文件夹及其子文件夹中的匹配文件。

  /D  也处理文件夹。





//隐藏job

C:\Documents and Settings\Administrator>attrib +h mysqlBAK.job

找不到文件 - mysqlBAK.job



C:\Documents and Settings\Administrator>attrib +h c:\windows\tasks\mysqlBAK.job



//取消隐藏job

C:\Documents and Settings\Administrator>attrib -h c:\windows\tasks\mysqlBAK.job





C:\Documents and Settings\Administrator>at /?

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 命令或批处理

                     程序。





示例:



C:\Documents and Settings\Administrator>at

列表是空的。

C:\Documents and Settings\Administrator>at  \\110.110.110.119 14:00  e:\test.exe



How to properly quote file path with SCHTASKS




SCHTASKS /CREATE /TN "TASK1" /TR "\"C:\Program_Files\Spybot - Search ^& Destroy\SpybotSD.exe\" \AUTOCHECK \AUTOFIX \AUTOCLOSE" /ST 01:00:00 /SC Daily /RU MyUser /RP MyPass


set taskrun="%ProgramFiles(x86)%\foo\bar.exe"
schtasks /create /TN FooBar /TR \"%taskrun%\" /SC ONLOGON /RL HIGHEST /F



//http://www.cnblogs.com/dongzhiquan/p/3231498.html
设置定时任务
@echo off
set NAME=dailybackup
set TIME=20:01:00
set DAY=MON,TUE,WED,THU,FRI,SAT,SUN
set COMMAND=cscript.exe %~dp0dailybak.vbs
%SystemDrive%
cd %windir%\tasks\
if exist %NAME%.job del %NAME%.job
schtasks /create /tn %NAME% /tr "%COMMAND%" /sc weekly /d %DAY% /st %TIME% /ru system
//demo: schtasks /create /sc minute /mo 30 /tn "finaltest" /tr "\"d:program file\smth.bat\"" \"'20' '302'\"



登录启动winform程序
@echo off
set current_path=%~dp0
set NAME=printTask
set COMMAND=%current_path%PrintService.exe
schtasks /create /tn %NAME% /tr "\"%COMMAND%\"" /SC ONLOGON /delay 0000:03  /RL HIGHEST
schtasks /run /tn %NAME%
echo. & pause
  原文:
  http://gwmold.blog.163.com/blog/static/1553319892010117113457232/
  http://wl3033619.blog.163.com/blog/static/2708106820130882729740/
  http://stackoverflow.com/questions/5837761/how-to-properly-quote-file-path-with-schtasks
  http://www.cnblogs.com/shy1766IT/p/5059523.html

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-389225-1-1.html 上篇帖子: Live555流媒体服务器编译(Windows下) 下篇帖子: Windows自带.NET Framework版本大全
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表