`
luotuoass
  • 浏览: 640110 次
文章分类
社区版块
存档分类
最新评论

计划任务解说

 
阅读更多
<meta content="text/html; charset=utf-8" http-equiv="Content-Type"> <meta content="Word.Document" name="ProgId"> <meta content="Microsoft Word 11" name="Generator"> <meta content="Microsoft Word 11" name="Originator"> <link href="file:///C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/msohtml1/02/clip_filelist.xml" rel="File-List"> <smarttagtype name="State" namespaceuri="urn:schemas-microsoft-com:office:smarttags"></smarttagtype><smarttagtype name="place" namespaceuri="urn:schemas-microsoft-com:office:smarttags"></smarttagtype><smarttagtype downloadurl="" name="chsdate" namespaceuri="urn:schemas-microsoft-com:office:smarttags"></smarttagtype><!--[if gte mso 9]><xml> <w:WordDocument> <w:View>Normal</w:View> <w:Zoom>0</w:Zoom> <w:PunctuationKerning /> <w:DrawingGridVerticalSpacing>7.8 磅</w:DrawingGridVerticalSpacing> <w:DisplayHorizontalDrawingGridEvery>0</w:DisplayHorizontalDrawingGridEvery> <w:DisplayVerticalDrawingGridEvery>2</w:DisplayVerticalDrawingGridEvery> <w:ValidateAgainstSchemas /> <w:SaveIfXMLInvalid>false</w:SaveIfXMLInvalid> <w:IgnoreMixedContent>false</w:IgnoreMixedContent> <w:AlwaysShowPlaceholderText>false</w:AlwaysShowPlaceholderText> <w:Compatibility> <w:SpaceForUL /> <w:BalanceSingleByteDoubleByteWidth /> <w:DoNotLeaveBackslashAlone /> <w:ULTrailSpace /> <w:DoNotExpandShiftReturn /> <w:AdjustLineHeightInTable /> <w:BreakWrappedTables /> <w:SnapToGridInCell /> <w:WrapTextWithPunct /> <w:UseAsianBreakRules /> <w:DontGrowAutofit /> <w:UseFELayout /> </w:Compatibility> <w:BrowserLevel>MicrosoftInternetExplorer4</w:BrowserLevel> </w:WordDocument> </xml><![endif]--><!--[if gte mso 9]><xml> <w:LatentStyles DefLockedState="false" LatentStyleCount="156"> </w:LatentStyles> </xml><![endif]--><!--[if !mso]><object classid="clsid:38481807-CA0E-42D2-BF39-B33AF135CC4D" id=ieooui></object> <style> st1/:*{behavior:url(#ieooui) } </style> <![endif]--><style type="text/css"> <!-- /* Font Definitions */ @font-face {font-family:Wingdings; panose-1:5 0 0 0 0 0 0 0 0 0; mso-font-charset:2; mso-generic-font-family:auto; mso-font-pitch:variable; mso-font-signature:0 268435456 0 0 -2147483648 0;} @font-face {font-family:宋体; panose-1:2 1 6 0 3 1 1 1 1 1; mso-font-alt:SimSun; mso-font-charset:134; mso-generic-font-family:auto; mso-font-pitch:variable; mso-font-signature:3 135135232 16 0 262145 0;} @font-face {font-family:"/@宋体"; panose-1:2 1 6 0 3 1 1 1 1 1; mso-font-charset:134; mso-generic-font-family:auto; mso-font-pitch:variable; mso-font-signature:3 135135232 16 0 262145 0;} @font-face {font-family:新宋体; panose-1:2 1 6 9 3 1 1 1 1 1; mso-font-charset:134; mso-generic-font-family:modern; mso-font-pitch:fixed; mso-font-signature:3 135135232 16 0 262145 0;} @font-face {font-family:"/@新宋体"; panose-1:2 1 6 9 3 1 1 1 1 1; mso-font-charset:134; mso-generic-font-family:modern; mso-font-pitch:fixed; mso-font-signature:3 135135232 16 0 262145 0;} @font-face {font-family:华文细黑; panose-1:0 0 0 0 0 0 0 0 0 0; mso-font-alt:宋体; mso-font-charset:134; mso-generic-font-family:roman; mso-font-format:other; mso-font-pitch:auto; mso-font-signature:1 135135232 16 0 262144 0;} @font-face {font-family:"/@华文细黑"; panose-1:0 0 0 0 0 0 0 0 0 0; mso-font-charset:134; mso-generic-font-family:roman; mso-font-format:other; mso-font-pitch:auto; mso-font-signature:1 135135232 16 0 262144 0;} /* Style Definitions */ p.MsoNormal, li.MsoNormal, div.MsoNormal {mso-style-parent:""; margin:0cm; margin-bottom:.0001pt; text-align:justify; text-justify:inter-ideograph; mso-pagination:none; font-size:10.5pt; mso-bidi-font-size:12.0pt; font-family:"Times New Roman"; mso-fareast-font-family:宋体; mso-font-kerning:1.0pt;} h2 {mso-margin-top-alt:auto; margin-right:0cm; mso-margin-bottom-alt:auto; margin-left:0cm; mso-pagination:widow-orphan; mso-outline-level:2; font-size:18.0pt; font-family:宋体; mso-bidi-font-family:宋体; font-weight:bold;} p {mso-margin-top-alt:auto; margin-right:0cm; mso-margin-bottom-alt:auto; margin-left:0cm; mso-pagination:widow-orphan; font-size:12.0pt; font-family:宋体; mso-bidi-font-family:宋体;} /* Page Definitions */ @page {mso-page-border-surround-header:no; mso-page-border-surround-footer:no;} @page Section1 {size:595.3pt 841.9pt; margin:72.0pt 90.0pt 72.0pt 90.0pt; mso-header-margin:42.55pt; mso-footer-margin:49.6pt; mso-paper-source:0; layout-grid:15.6pt;} div.Section1 {page:Section1;} /* List Definitions */ @list l0 {mso-list-id:329479660; mso-list-type:hybrid; mso-list-template-ids:-316632908 -262520056 67698713 67698715 67698703 67698713 67698715 67698703 67698713 67698715;} @list l0:level1 {mso-level-tab-stop:18.0pt; mso-level-number-position:left; margin-left:18.0pt; text-indent:-18.0pt; font-family:新宋体; color:windowtext;} ol {margin-bottom:0cm;} ul {margin-bottom:0cm;} --> </style> <!--[if gte mso 10]> <style> /* Style Definitions */ table.MsoNormalTable {mso-style-name:普通表格; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-parent:""; mso-padding-alt:0cm 5.4pt 0cm 5.4pt; mso-para-margin:0cm; mso-para-margin-bottom:.0001pt; mso-pagination:widow-orphan; font-size:10.0pt; font-family:"Times New Roman"; mso-ansi-language:#0400; mso-fareast-language:#0400; mso-bidi-language:#0400;} </style> <![endif]-->

计划任务解说

1.AT命令与计划任务的区别

我们在建立计划任务时,一般可以使用两种方法:控制面板中的任务计划、at命令。那这两种方法是不是完全相同呢,还是有什么区别?再有2000系统中有一个task scheduler服务,那这两种方法与task scheduler服务又是什么关系呢?今天闲来无事,专门研究了一下。

首先在task scheduler服务启动的情况下,分别使用控制面板|任务计划和at命令建立计划任务,让它运行附件中的计算机程序(calc.exe)。建立成功后,可以在控制面板|任务计划中看到两个任务,其中一个名字为at1,也就是at命令建立的任务了。然后在命令行方式下不带参数运行at命令,让它列出所有任务,结果只能看到at1这个任务,而使用控制面板|任务计划建立的任务是看不到的。在控制面板|任务计划中双击at1,发现是可以编辑的,修改了它的运行计划,保存退出。然后再运行at命令,发现任务清单变成空的了。再有一个现象就是使用控制面板|任务计划创建的任务可以看到它成功的运行,而at命令建立的任务的运行却没有看到。难道at命令没有运行成功?利用at命令重新建了一个任务,发现还是没有结果。最后,打开任务管理器,在进程中发现已经有两个calc.exe了。再查帮助,原来at命令建立的任务就是后台运行的。再有,任务是存储在%systemroot%/tasks文件夹中的,默认的扩展名为.job

然后,停止task scheduler服务。再使用at命令创建任务,发现已经无法创建任务,系统提示服务仍未启动。而使用控制面板|任务计划却可以创建成功,难道它不需要 task scheduler服务?到服务中查看一下,却发现task scheduler服务已经启动了。原来控制面板|任务计划是可以自动启动task scheduler服务的。把task scheduler服务启动方式设置为手动,并且停止服务,再使用控制面板|任务计划创建任务,发现仍然可以成功,并且task scheduler服务又一次被启动了。把task scheduler服务设置为禁用并停止后,控制面板|任务计划终于也无法成功了。

经过以上的试验,得出最后的结论:控制面板中的任务计划和at命令都是依赖于task scheduler服务的,不过任务计划可以自动启动task scheduler服务(除非设为禁用),而at命令无法自动启动服务;两种方法建立的任务均可以在控制面板|任务计划中看到并且编辑,都会生成.job 文件,但使用at命令却只能看到用命令建立的任务;使用at命令建立的任务一经任务计划的编辑,就无法使用at命令查看和编辑了;任务计划建立的任务的运行是前台的,而at命令建立的任务的运行是后台的。

2.无法启动计划任务的解决方法

这有两种可能,一是系统中的“Task Scheduler”服务没有启动,你可在运行中键入“services.msc”,查看“Task Scheduler”服务是否被设置成了已禁用,若是,只要双击它将启动类型改为自动,重新设定一个计划任务就可以执行了。

如果你当前账户设置了自动登录,而其登录密码又为空,也有可能导致任务计划不能按时执行,在XP专业版中,需要运行“gpedit.msc”来编辑 组策略:展开计算机配置→Windows设置安全设置本地计算机策略安全选项;双击右侧的账户:使用空白密码的本地账户只允许进行控制台登录项,在弹出对话框中选择已禁用

3.回味DOS

WINDOWS已经进化到 VISTA 的今天,想必已经很少人会记得我们还有一个老朋友,名字叫做DOS。记得以前用286-386的时候,还没有图形界面的操作系统,PC电脑对于绝大多数人来说就是DOS

其实我也是很长时间没有碰过DOS了,虽然偶尔也会用一下命令行模式,但是目的也仅限于查看IP和检查网络是否通畅。幸运的是最近在处理一些文件发布方面的事情的时候,苦于不停地CTRL+C – CTRL+V 然后还要修改名字,而且还需要把数千个文件发布到二十几台服务器的烦恼,不得不再一次祭出这个老法宝,多亏这位DOS老朋友宝刀不老,帮我解决了大麻烦了。

转念一想,也许并非我一个人这么幸运碰到这样变态的发布工作,于是把这几天用到的一些DOS方面的命令记录下来,给和我同样幸运的忍受发布文件工作的同胞们提供另外一个解脱的途径。

顺带的说一句,我这里说的DOS其实和原来的DOS已经有很大的差别,所以我后面说的DOS其实都是WINDOW里面的命令行工具,为了说起来方便,叫着也顺口,就直接说DOS了。我后面的用词上面 DOS=命令行=COMMAND

1 创建时间戳目录

我 先说一下我为什么需要创建时间戳目录。其实是这样的,我需要把一个网站发布到二十几台服务器上面。在做更新的时候,也要求同时更新。大家做过更新工作的就会知道,难免会发生错误或者客户的要求突然改变,需要恢复到以前的版本。怎么办呢?好办啊,更新之前把老的版本备份一次嘛。对了,就是这样,我把需要更新的部分先复制到一个用时间作为名称的目录,所以这个目录是即时创建。这个时候就用到了创建时间戳目录这个方法(当然了,大哥你时间充裕并且服务器允许的话,你用VC/VB/C#/JAVA什么的写一个用来备份和同步的AP丢上服务器我自然没话说,只是我这边的情况不允许)。下面我就来说一下我怎么操作的。

1.1 获取日期和时间

大家应该知道在命令行的模式下,获取日期的方法是这样子

C:>DATE

当前日期:<chsdate w:st="on" year="2006" month="7" day="27" islunardate="False" isrocdate="False"><span lang="EN-US" style="font-size: 9pt; font-family: 宋体; color: rgb(77, 77, 77);">2006-07-27</span></chsdate> 星期四

而获取时间的方法则是

C:>TIME

当前时间:17:55:30.63

1.2 获取时间戳

可是上面的得到的是时间和日期,并不时在MD的时候所需要的字符串,怎么解决呢?DOS下面有一个转换成字符串的方法:

u %变量%

这样子就是表示取变量的值转换到字符串。

不过%DATE%%TIME%取出来依然并非我需要的字符串。我预期的时间戳格式是这样的 YYYYMMDDHHMMSS 例如20060727175530 这样子。因此我们还需要处理一下这个字符串。在命令行里面我们可以通过

u %变量名:~起始位置,长度%

这样的格式来取得字符串中特定位置的子串。

例如:

%DATE:~0,4% 得到 2006 %DATE:~5,2% 得到 07 %DATE:~8,2% 得到 27

现在简单了,得到我需要的字符串,下面这样操作就可以了

u %DATE:~0,4%%DATE:~5,2%%DATE:~8,2%%TIME:~0,2%%TIME:~3,2%%TIME:~6,2%

创间时间戳目录

好了,目录名都已经出来了,还有什么困扰呢,呵呵呵,组合上我们亲爱的MD命令,就搞定了,大家可以试试看

MD %DATE:~0,4%%DATE:~5,2%%DATE:~8,2%%TIME:~0,2%%TIME:~3,2%%TIME:~6,2%

2 管理WINDOWS服务

接下来我和大家分享一下如何用命令行来管理WINDOW服务

因为我是用.NET写程序的,所以我这边描述的是怎样用DOS安装.NET开发的WINDOWS服务其他的语言编写的WINDOWS服务我没有安装过,不过我相信应该也有相应的办法来安装。

其实我会想到要用命令行来控制WINDOWS服务,起因是我的笔记本性能不够好,平时我要玩游戏(例如WOW)的时候,总是会要打开WINDOWS的服务管理器来关闭大约十几个服务,释放一些内存,以便让我的笔记本运行WOW的时候比较流畅,后来觉得每次都这么干真的是很麻烦,索性写了一个批处理,每次玩WOW的时候只要双击一下,所有需要关闭的服务就依次关闭了,再也不用打开服务管理器去一个个的找出来关闭了。希望和我有同样需要的朋友能从这里得到一点帮助,嘿嘿。那我们就开始吧

2.1 关闭服务

命令格式如后:NET STOP 服务名称

有朋友就会问了,服务名称是什么东西呢?简单!打开服务管理器,第一列就是服务名称了,COPY过来就好了。

2.2 启动服务

好了,介绍了关闭,咱自然还得打开,成天打WOW自然是惬意,可是不工作没饭吃呀。要重新启动那些服务,你要是不嫌麻烦,可以选择重新启动计算机,也可以打开服务管理器逐个找出来启动。废话不多说,我们还是推荐用命令行批处理。

现在就说如何启动WINDOW服务

命令如后:NET START 服务名称

把你刚才写在关闭服务的那个BAT文件里面的所有服务名称都COPY过来吧。要不然把 STOP 替换成 START 然后另存为,也是一个不错的偷懒方法,既然目的就是偷懒,索性将偷懒进行到底~~

2.3 安装服务

有了关有了开,我们现在再提一下如何安装.NET开发的WINDOW服务。前面废话说太多了,这里就不多说废话了,直接把我现在使用的BAT文件内容贴出来,大家参考着自己写就可以了,其实蛮容易的。

//新建目录

MD %SYSTEMROOT%/XXX/

//拷贝文件

COPY *.* %SYSTEMROOT%/XXX/

//这句最重要,这是安装服务

%SYSTEMROOT%/MICROSOFT.NET/FRAMEWORK/V1.1.4322/INSTALLUTIL.EXE %SYSTEMROOT%/XXXX/MYSERVICE.EXE

//安装好了以后启动服务

NET START MYSERVICE

//退出命令行状态

EXIT

2.4 重新启动服务

NET STOP MYSERVICE

NET START MYSERVICE

EXIT

2.5 卸载服务

//卸载之前一定要先停止服务 NET STOP MYSERVICE //卸载服务,其实语句和安装服务很类似,只是多一个 /U 参数 %SYSTEMROOT%/MICROSOFT.NET/FRAMEWORK/V1.1.4322/INSTALLUTIL.EXE /U %SYSTEMROOT%/XXX/MYSERVICE.EXE //删除文件,如果是删除文件夹的话,请使用DELTREE DEL %SYSTEMROOT%/XXX /Q //退出命令行状态 EXIT

3自动确认删除

删除命令常用的是DEL DELTREE

DEL FILEPATH /P 是自动确认删除文件

DELTREE /Y FOLDERPATH 是自动确认删除文件夹

还有一种方法,可以通过文本文件把参数传入命令例如下面这个

<place w:st="on"><state w:st="on"><span lang="EN-US" style="font-size: 12pt; font-family: 宋体;">DEL</span></state></place> D:/AAA/*.* < C:/A.TXT 这样的话在A.TXT里面写一个Y然后一个回车就能自动的输入Y

这种方法不仅限于自动确认删除,在很多需要输入参数的地方都很好用。

应用举例:按月备份oracle数据库,数据是最新的。

<!--[if !supportLists]-->1. <!--[endif]-->建立批处理文件: exp 用户名/密码@服务名 d/%DATE:~5,2%.tmp

<!--[if !supportLists]-->2. <!--[endif]-->添加计划任务,每天执行。

分享到:
评论

相关推荐

    高考作文写作提升课堂:附例解说如何写好意见、建议型任务驱动作文.docx

    高考作文写作提升课堂:附例解说如何写好意见、建议型任务驱动作文.docx

    HookApi禁止任务管理器结束进程

    Hook TerminateProcess函数 禁止任务管理器结束进程 内有详细注释解说 编译运行通过!

    旅游景区环境解说系统设计方法及个案探讨 (2005年)

    加强旅游景区环境解说系统设计,提高解说水平,是旅游景区管理的重要任务之一。有利于旅游景区提高文化品位和经营管理水平,有利于旅游者获得更高的旅游价值和旅游体验。在对旅游景区环境解说系统进行概述,总结近年...

    软件工程实验室解说词.doc

    软件工程实验室简介 热烈欢迎各位专家莅临我院检查指导! 西安翻译学院计算机实验中心,建成于2002年。您现在莅临检查的是软件工程实验 机房。... ----------------------- 软件工程实验室解说词全文共

    ABB机器人左右码垛详细解说

    利用IF条件判断,当左右两侧至少有一侧满足码垛条件时,判断条件bReady为TRUE,机器人则执行码垛任务 rPick; !调用抓取程序 rPlace; !调用放置程序 ENDIF rCycleCheck; !调用循环检测程序,里面包含写屏显示...

    数据库服务器选型原则及实例解说.doc

    它承担着业 务数据的存储和处理任务,因此关键数据库服务器的选择就显得尤为重要。服务器的可 靠性和可用性是首要的需求,其次是数据处理能力和安全性,然后是可扩展性和可管理 性。 根据应用类型和规模的不同,...

    Oracle自动备份存储过程脚本及过程详解

    帮助解决Oracle中存储过程自动备份得脚本及添加任务计划过程得详细解说 帮助解决Oracle中存储过程自动备份得脚本及添加任务计划过程得详细解说

    详细中文解说的模拟编译器——源码

    找了几本编译原理看,什么正则表达式、自动机把我都搞糊涂了。 把复杂的问题弄得更复杂,这不是我希望的...任务:读入源码,输出汇编。 详细说明及效果图见http://blog.csdn.net/stgsd/archive/2008/12/05/3451935.aspx

    冷门项目不露脸直播,参与官方任务,日入600+-教程网盘链接提取码下载 .txt

    我们通过半无人解说的模式,开始直播,直播讲解历史名人的故事,进行解说,然后去投稿我们的星图任务完成变现! 课程目录 1、项目介绍 2、实操教学 3、直播工具和素材 4、直播间案列

    Delphi模式编程第一分卷

    14.3.2 享元模式在任务调度系统中的应用 14.3.3 范例小结 第15章 代理模式(Proxy) 15.1 模式解说 15.2 结构和用法 15.2.1 模式结构 15.2.2 代码模板 15.3 范例与实践 15.3.1 代理模式在数据库程序中的应用...

    Delphi模式编程第二分卷

    14.3.2 享元模式在任务调度系统中的应用 14.3.3 范例小结 第15章 代理模式(Proxy) 15.1 模式解说 15.2 结构和用法 15.2.1 模式结构 15.2.2 代码模板 15.3 范例与实践 15.3.1 代理模式在数据库程序...

    Activity生命周期与启动模式图文解说

    预备知识:任务栈/回退栈** 栈是一种常见的数据结构,具有先进后出,后进先出的特点。从数据形式上来说,它可以用下面这一张图来表示: 在这个栈中,我们每一个新放进栈的数据,都会放在栈头的位置,而其他的在之前...

    STM32+RT Thread学习笔记

    博客中的学习笔记整理档 主要记录了如何搭建RT-Thead/RTGUI的运行环境及相关解说

    STM32F7xx FreeRTOS开发.rar

    STM32F7 FreeRTOS开发手册,详细记录移植过程,移植步骤,并附有详细例程介绍解说 系统简介,系统移植,系统配置,任务基础知识任务api函数

    自家藏书_自制操作系统.pdf

    作者从计算机的构造、汇编语言、C语言开始解说,让你在实践中掌握算法。在这本书的指导下,从零编写所有代码,30天后就可以制作出一个具有窗口系统的32位多任务操作系统。本书以课题为主导,边做边玩,抛开晦涩难懂...

    微机原理课程设计报告

    部分电路设计及功能解说 11 4.1 频率发生电路 11 4.2 扬声器开关控制电路 11 五.硬件接线图 11 六.软件设计流程图 12 6.1 总流程图 12 6.2 音乐播放子程序流程图 13 七.程序段功能汇总 13 7.1 MAIN程序 13 7.2 PLAY...

    简历写作中的STAR原则.md

    简历写作中的STAR原则,即Situation(情景)、Task(任务)、Action(行动)和Result(结果)四个英文单词的首字母组合。 百度百科有不少解说。本文选摘两篇,学习融合,取其要义,加上本人理解而得,旨在融汇思路,...

    【C#界面】完美实现无毛边异形窗体(优化版)

    论坛中有详细解说和效果图: http://bbs.csdn.net/topics/390326481 资源名:【C#界面】完美实现无毛边异形窗体(优化版) 下载内容: 示例源码一份 属性: GradientTime:控件层渐变特效时长(越小越快)。 ...

    在阅读此书之前,假设大家已经对各种黑客工具,技术(调试器,后门,fuzzer,仿真器, 代码注入)都有一个理论上的认识 我们的目

    各种复杂的任务。如果你已经对 Python 很熟悉,并且对 ctypes 库也很了解了,那就可以跳 过第二章。当然,你也可以只是当当看其中感兴趣的一章,每章的代码都做了详实的解释。在阅读此书之前,假设大家已经对各种...

Global site tag (gtag.js) - Google Analytics