• 定时计划任务方案比较以及通过脚本创建计划任务(SchTasks命令)


    对于定时任务的处理方法一般有两种 自定义windows service和设置计划任务
    两种方案比较:
    自定义Windows Service:
    优点:灵活度比较高,定时任务可以保存在数据库中也可以在config文件中。可以另外写一个可视的配置小程序来帮助用户(管理员)来管理。运行结果也方便跟踪。发布的时候配置一次即可。
    缺点:需要额外的编码来读取配置的定时任务并运行相应的程序,同时需要记录运行结果

    利用windows计划任务
    优点:节省开发时间
    缺点:对系统依赖程度较高;配置稍微麻烦一些,特别是需要配置多种计划任务的情况,对用户(系统管理员)来说比较麻烦;计划任务是否按时启动需要考启动程序的log来查看,windows的计划任务本身的log只有4k,而且是循环使用,用来判断计划任务是否启动不太可靠。

    SchTasks使用说明:
    示例:
    删除:SCHTASKS /DELETE /TN ScheduleTaskTest /F
    创建:SCHTASKS /Create /RU SYSTEM /TN ScheduleTaskTest /SC MONTHLY /D 1 /ST 00:00:00 /TR "C:\Solution\TestApp\Bin\Debug\TestApp.exe /Method Test"

    参数说明:
    /sc Schedule Type
    指定计划类型。有效值为 MINUTE、HOURLY、DAILY、WEEKLY、MONTHLY、ONCE、ONSTART、ONLOGON、ONIDLE。
    MINUTE、HOURLY、DAILY、WEEKLY、MONTHLY 指定计划的时间单位。
    ONCE 任务在指定的日期和时间运行一次。
    ONSTART 任务在每次系统启动的时候运行。可以指定启动的日期,或下一次系统启动的时候运行任务。
    ONLOGON 每当用户(任意用户)登录的时候,任务就运行。可以指定日期,或在下次用户登录的时候运行任务。
    ONIDLE 只要系统空闲了指定的时间,任务就运行。可以指定日期,或在下次系统空闲的时候运行任务。

    /tn Task Name
    指定任务的名称。系统上的每项任务都必须具有一个唯一的名称。名称必须符合文件名称规则

    /tr Task to Run
    指定任务运行的程序或命令。键入可执行文件、脚本文件或批处理文件的完全合格的路径和文件名。路径名称不得超过 262 个字符。如果忽略该路径,SchTasks 将假定文件在 Systemroot\System32 目录下。

    /ru {[Domain\]User | System}
    使用指定用户帐户的权限运行任务。默认情况下,使用本地计算机当前用户的权限,或者使用 /u 参数指定的用户的权限(如果包含的话)运行任务。在本地或远程计算机上计划任务时,/ru 参数才有效。
    可设置值说明:
    [Domain\]User 指定候选用户帐户。
    System 指定 Local System 帐户,这是一种操作系统和系统服务使用的具有高度特权的帐户。

    /sd StartDate
    可选, 指定任务计划开始的日期。默认值为本地计算机上的当前日期。

    其实windows还提供了另外一个指令创建计划任务AT,不过AT指令会自动给计划任务起名字,不支持指定名称,用来做脚本就不太显示,这里就不多说这条指令了。

  • 相关阅读:
    spring mvc 详细配置
    eclipse PermGen space解决方案
    JDK环境变量详细讲解
    Linux 中如何卸载已安装的软件
    Struts2工作原理
    HashMap的工作原理深入再深入
    Session的工作原理
    什么办法可以替代distinct
    脚踏实地才能仰望星空
    Ubuntu 进阶命令——长期不定时更新
  • 原文地址:https://www.cnblogs.com/lyrix/p/1007527.html
Copyright © 2020-2023  润新知