我在创建批处理文件时遇到一些问题,我首先要删除.msi文件,然后运行.exe文件,这是我到目前为止所做的。
echo on
title remove mimecast 3.5.6
if exist c:\windows\mimecastrem.tag goto alldone
msiexec.exe /x {86C4653D-E9B2-4421-8578-D2B953FFAEDA} /qn /L "C:\windows\mimecast.log"
start \\fcmsvr2\MimecastMSO\deploymimecast.exe /zap
echo. >c:\windows\mimecastrem.tag
:alldone
rem exit
如果我在DOS上运行它登录到它运行正常,我已经尝试将其添加到GPO启动和关闭并批处理运行但只删除.msi文件并且不会启动.exe,是有一种方法可以添加日志记录,以便我可以看到它为什么没有运行?
由于 大卫
答案 0 :(得分:0)
当我尝试从GPO运行批处理命令时,我通常有两个批处理文件:
这样,如果重要的批处理文件有语法问题(通常是由于变量的内容或机器上的其他条件),我仍然会在日志中看到一些内容。
<强> batch_worker.cmd 强>
@ECHO OFF
SETLOCAL
@ECHO Proceeding with important tasks...
REM do other stuff (delete, install, etc.)
<强> batch_wrapper.cmd 强>
CALL %~dp0batch_worker.cmd > C:\Windows\TEMP\batch_worker.log 2>&1
我偶尔使用的另一个选项是让脚本自行调用,重定向输出。
<强> batch_worker.cmd 强>
@ECHO OFF
SETLOCAL
IF NOT "%_LOGGING%"=="1" (
SET _LOGGING=1
CALL "%0" %* > C:\Windows\TEMP\batch_worker.log 2>&1
EXIT /B %ERRORLEVEL%
)
@ECHO Proceeding with important tasks...
REM do other stuff (delete, install, etc.)
答案 1 :(得分:0)
在Windows计算机上运行的任何启动脚本都将具有计算机帐户的网络标识(COMPUTERNAME$
)。此帐户通常无法访问大多数网络资源。 GPO是一个例外。所有计算机帐户都可以访问GPO(存储为文件)。
如果您的脚本需要其他文件: