Task Scheduler 介绍
2012-04-09 22:20 潇湘隐者 阅读(23102) 评论(0) 编辑 收藏 举报Task Scheduler 的描叙:使用户可以在此计算机上配置和计划自动任务,此服务还托管多个Windows系统关键任务。如果此服务被停止或禁用,这些任务将无法再按计划的时间运行。如果此服务被禁用,则明确依赖它的所有服务将无法启动。这个命令有点类似于Linux下的crontab 等后台命令。可以通过它在Window 平台自动备份数据库等任务。这个命令依赖于Remote Procedure Call(RPC)系统组件(Windows XP/2000/2003下), 在VISTA、WIN7下必须依赖Remote Procedure Call(RPC)、Windows Event Log两个系统组件。
启动Task Scheduler(Win2003下)
1:你可以在开始菜单——运行里面输入:services.msc 命令进入服务窗口,亦可以通过控制面板——管理工具——服务,进入服务,
手动对Task Scheduler服务进行启动。
2:也可以通过命令形式启用服务。
用dos打开task scheduler服务:sc start schedule 。schedule是服务名称,而Task Scheduler是显示名称。
停止Task Scheduler(Window 2003下)
1:你可以在开始菜单——运行里面输入:services.msc 命令进入服务窗口,亦可以通过控制面板——管理工具——服务,进入服务,
手动对Task Scheduler服务进行停止。
2:也可以通过命令形式停止服务。(Windows 2003)
【注意】在WIN7 和 VISTA下Task Scheduler该服务无法被禁用。如果此服务被禁用,任何依赖它的服务将无法启动。已经不单是以前操作系统的计划任务调度管理器了
查看Task Scheduler服务状态
直接通过上面的服务窗口查看,可以用命令:sc query schedule查看
创建Task Scheduler服务
sc create Schedule binPath= "%SystemRoot%\System32\svchost.exe -k netsvcs" type= share start= auto displayname= "Task Scheduler" depend= RpcSs
不过我在删除该服务后,运行上面命令后,启动task scheduler服务时出现错误2:系统找不到指定的文件。折腾了很久,网上也搜索了很多资料,依然没有解决问题,不知道哪位同仁解决过此类问题。
删除Task Scheduler服务
使用命令 sc delete schedule 删除Task Scheduler服务(Window 2003下)。一般建议先停止服务,然后使用删除命令。
执行后可以看见Task Scheduler服务变成禁用状态了。
Windows 7 下执行结果如下:
SCHTASKS /parameter [arguments]
描述: schtasks.exe是安排命令和程序定期运行或在指定时间内运行。从计划表中添加和删除任务,按需要启动和停止任务,显示和更改计划任务。
允许管理员创建、删除、查询、更改、运行和中止
本地或远程系统上的计划系统。替代 AT.exe。
参数列表:
/Create 创建新计划任务。
/Delete 删除计划任务。
/Query 显示所有计划任务。
/Change 更改计划任务属性。
/Run 立即运行计划任务。
/End 中止当前正在运行的计划任务。
/? 显示帮助/用法。
示例:
SCHTASKS
SCHTASKS /?
SCHTASKS /Run /?
SCHTASKS /End /?
SCHTASKS /Create /?
SCHTASKS /Delete /?
SCHTASKS /Query /?
SCHTASKS /Change /?
sc命令详解,可以在dos下面直接输入sc,即可得到sc命令的帮助文档,各种详细参数配置。如下所示:
C:\Documents and Settings\Administrator>sc
描述:
SC 是用于与
服务控制管理器和服务进行通信的命令行程序。
用法:
sc <server> [command] [service name] <option1> <option2>...
选项 <server> 的格式为 "\\ServerName"
可以键入 "sc [command]" 以获得命令的进一步帮助
命令:
query-----------查询服务的状态, 或
枚举服务类型的状态。
queryex---------查询服务的扩展状态, 或
枚举服务类型的状态。
start-----------启动服务。
pause-----------向服务发送 PAUSE 控制请求。
interrogate-----向服务发送 INTERROGATE 控制请求。
continue--------向服务发送 CONTINUE 控制请求。
stop------------向服务发送 STOP 请求。
config----------更改服务的配置(永久)。
description-----更改服务的描述。
failure---------更改服务失败时所进行的操作。
sidtype---------更改服务的服务 SID 类型。
qc--------------查询服务的配置信息。
qdescription----查询服务的描述。
qfailure--------查询服务失败时所进行的操作。
qsidtype--------查询服务的服务 SID 类型。
delete----------(从注册表)删除服务。
create----------创建服务(将其添加到注册表)。
control---------向服务发送控制。
sdshow----------显示服务的安全描述符。
sdset-----------设置服务的安全描述符。
showsid---------显示与
任意名称相对应的服务 SID 字符串。
GetDisplayName--获取服务的 DisplayName。
GetKeyName------获取服务的 ServiceKeyName。
EnumDepend------枚举服务的依存关系。
下列命令不要求服务名称:
sc <server> <command> <option>
boot------------(ok | bad) 表明是否将最后一次启动
保存为最后一次的正确启动配置
Lock------------锁定服务数据库
QueryLock-------查询 SCManager 数据库的 LockStatus
示例:
sc start MyService
是否要查看 QUERY 和 QUERYEX 命令的帮助? [ y | n ]:
y
QUERY 和 QUERYEX 选项:
如果查询命令带服务名称,将返回
该服务的状态。其他选项不适合这种
情况。如果查询命令不带参数或
带下列选项之一,将枚举此服务。
type= 要枚举的服务的类型(driver, service, all)
默认 = service)
state= 要枚举的服务的状态 (inactive, all)
(默认 = active)\n"
bufsize= 枚举缓冲区的大小(以字节计)
(默认 = 4096)
ri= 开始枚举的恢复索引号\n"
(默认 = 0)
group= 要枚举的服务组
(默认 = all groups)
句法示例
sc query - 枚举活动服务和驱动程序的状态
sc query messenger - 显示信使服务的状态
sc queryex messenger - 显示信使服务的扩展状态
sc query type= driver - 仅枚举活动驱动程序
sc query type= service - 仅枚举 Win32 服务
sc query state= all - 枚举所有服务和驱动程序
sc query bufsize= 50 - 枚举缓冲区为 50 字节
sc query ri= 14 - 枚举时恢复索引 = 14
sc queryex group= \"\" - 枚举不在组内的活动服务
sc query type= service type= interact - 枚举所有不活动服务
sc query type= driver group= NDIS - 枚举所有 NDIS 驱动程序
扫描上面二维码关注我
如果你真心觉得文章写得不错,而且对你有所帮助,那就不妨帮忙“推荐"一下,您的“推荐”和”打赏“将是我最大的写作动力!
本文版权归作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接.