C:\>systeminfo | findstr /c:"OS Name" OS Name: Microsoft Windows Server 2008 R2 Enterprise |
很多人在Windows 2008里面创建任务计划执行bat文件的时候都会遇到这样的问题:任务计划执行之后返回的状态码是0x1而不是正常的0x0
我今天也被这个问题给坑了,几乎花了一天的时间来排错。单独执行bat脚本一切正常,在Windows 2003的任务计划里面执行bat脚本也没有问题,但是只要放到Windows 2008的任务计划里面就不行。在国内、国外的网站上一通搜索,终于凑齐了所有的注意事项。步骤总结如下:
1、确认要执行任务计划的用户的密码没有过期,条件允许的情况下可以设置成密码永不过期,以免不必要的麻烦。
2、打开任务管理器,右键单击 Task Scheduler Library,选择 Create Task,这里千万不能选择 Create Basic Task
3、在 General 选项卡中选择 Run whether user is logged on or not,并勾选 Run with highest privileges,然后从下拉列表里面选择 Windows Server 2003,这里千万不能选择 Windows Server 2008
4、Triggers 选项卡中没有什么特别的地方,按照自己的需求设置执行时间就行了。
5、Actions 选项卡中,Program/script 输入框中填写脚本名称,这里千万不要包含路径。在 Start in 输入框中填写脚本所在的路径,这里千万不要加引号。
6、在bat脚本的结尾添加一行:
点击(此处)折叠或打开
- exit /b 0
不显式指定退出码的话,任务计划会认为脚本执行失败了。