![脚本未在域管理员下运行](https://linux22.com/image/648326/%E8%84%9A%E6%9C%AC%E6%9C%AA%E5%9C%A8%E5%9F%9F%E7%AE%A1%E7%90%86%E5%91%98%E4%B8%8B%E8%BF%90%E8%A1%8C.png)
运行 2003R2 的服务器。
我有一个脚本,它基本上设置了一个变量,然后使用它来命名备份文件。我在这里给出了确切的脚本:
echo > "%temp%\tmp.vbs" wscript.echo 10000 * month(now()) ^
+ 100 * day(now()) + year(now())-2000
for /F %%a in ('cscript //nologo "%temp%\tmp.vbs"') do (
set MyDate = %%a)
echo %MyDate% >test.txt
此脚本是从计划任务运行的。当我以自己的登录名运行该任务并以自己的身份运行时,它运行正常。但是,如果我以域管理员或其他“备份”用户的身份运行该任务,则上面给出的设置命令不起作用。
我已将最后一个 echo 命令用于测试目的。
当它工作时,它会给我 MyDate 的实际值。当它不工作时,它只是忽略该值,就好像它根本不存在一样。我得到“Echo is off”命令,就好像该命令只是 Echo 一样……
只是无法理解为什么它在某些用户下运行,而在某些用户下却不能运行。
洞察力和启迪也会有所帮助。
谢谢。
答案1
您需要进入您创建的计划任务的“属性”菜单,然后在“常规”选项卡上的“安全选项”框中,选择“无论用户是否登录都运行”(然后会要求您在单击“确定”关闭属性窗口时输入用户密码)。
根据您的权限等,您可能还需要选择“以最高权限运行”。
您可以手动尝试运行计划任务,方法是右键单击它并选择“运行”,然后刷新页面以显示“上次运行结果” - 然后根据MS 系统错误代码表帮助诊断出了什么问题。