BAT 文件不会在 Windows 10 任务计划程序中运行,但会以管理员身份或在提升的命令提示符下运行

Posted

技术标签:

【中文标题】BAT 文件不会在 Windows 10 任务计划程序中运行,但会以管理员身份或在提升的命令提示符下运行【英文标题】:BAT file will NOT run in Windows 10 Task Scheduler but WILL run as Admin or in elevated comand prompt 【发布时间】:2020-02-05 23:48:54 【问题描述】:

当我从提升的命令提示符或右键单击 -> 以管理员身份运行时,我的 BAT 文件(如下)运行完美。但是,当我将它放入我的 Windows 10 任务计划程序时,它不会运行。

我尝试过的: -- 任务的安全选项:我已经尝试过 SYSTEM 和域管理员帐户。 -- 我选择“以最高权限运行”。 -- 我在“配置为:”下拉列表中选择了“Windows 10”。 -- 在 EDIT ACTION 窗口中,我在“Start in (optional)”部分指定了 BAT 文件的位置 (c:\script) -- 在“程序/脚本”中,我尝试过“C:\scripts\script.bat”(不带引号)。我尝试仅列出“script.bat”(不带引号)。而且,我也尝试过“.\script.bat”(不带引号)。 -- 在尝试将文件复制到网络驱动器之前,我在 BAT 文件中创建了额外的行以将文件从 System32 目录复制到另一个(不太安全的)位置。 (我觉得这是不必要的,而且似乎对整体问题没有帮助。)

************************开始 BAT 文件******************

@Echo off

REM (maps network drive)
NET use Z: \\SERVER\PATH

REM (copies any archived security event viewer logs to the network) 
IF EXIST "%SystemRoot%\System32\Winevt\Logs\Archive-Securit*.evtx" (     
      xcopy "%SystemRoot%\System32\Winevt\Logs\Archive-Securit*.evtx" c:\test\ /Y      
      xcopy "c:\test\Archive-Securit*.evtx" \\SERVER\PATH\%computername% /Y

REM (deletes files on the local machine after the files are verified to be on the network share)      
     FORFILES /p "Z:\PATH\%computername%" /c "cmd /c del %SystemRoot%\System32\Winevt\Logs\@file"      
     FORFILES /p "Z:\PATH\%computername%" /c "cmd /c del c:\test\@file"

) ELSE ( 
REM Do nothing 
)

******************结束 BAT 文件******************

【问题讨论】:

这不是一个编程问题,它似乎涉及管理和可能的文件权限。投票结束,因为这属于不同的 SE 网站。 由于Z: 已映射到\\SERVER\PATH,您为什么不在各自的XCopyForFiles 命令中使用Z:\%ComputerName% 而不是\\SERVER\PATH\%computername%Z:\PATH\%computername% Compo,我同意,要么应该工作。然而,在我的所有故障排除步骤中,我发现以管理员身份运行 bat 无法识别映射 z:\ 的 XCOPY 命令,并且 FORFILES 不会作为 \\server\path 运行。因此,无论出于何种原因,这种特殊的组合都有效。自从发现组策略条目是我的罪魁祸首后,我就没有尝试更改它。 【参考方案1】:

我发现了我的问题。组策略在计算机配置 -> Windows 设置 -> 安全设置 -> 本地策略 -> 用户权限分配 -> “拒绝作为批处理作业登录”中有域管理员。

从此列表中删除域管理员并在计算机上运行 gpupdate 后,我能够在任务计划程序中成功运行 BAT(假设我在任务的安全选项中列出了域管理员用户)。

【讨论】:

以上是关于BAT 文件不会在 Windows 10 任务计划程序中运行,但会以管理员身份或在提升的命令提示符下运行的主要内容,如果未能解决你的问题,请参考以下文章

Windows通过定时计划任务执行bat文件

Windows通过定时计划任务执行bat文件

windows10计划任务启动bat执行jar打包的jar文件

用于重命名和移动文件的 Python、bat 文件和任务计划程序 - 在 Windows 10 中无法正常工作

win2000任务计划不执行BAT文件

如何安排不使用Windows任务计划程序运行bat文件?