使用cmd的Start命令运行exe。在本地工作,但不是远程工作

时间:2012-09-28 19:06:57

标签: batch-file cmd psexec

一些背景知识:我们正在尝试在服务器上自动安装代理。自动化工作流将检查需要此安装的服务器。如果是,则工作流将复制必要的安装文件以及.cmd批处理文件。

在本地调用此.cmd脚本时,安装正常。但是当尝试从工作流服务器远程调用此脚本时,它会挂起批处理中的某一行。来自脚本se_install.cmd的片段:

echo Installing SE 9.4 Agent
start "" /wait "Installcimextensions.exe" -i silent
echo Install completed

我们正在使用psexec远程调用上述脚本,使用我们用来为其他进程执行许多其他脚本的管理级帐户。以下是工作流服务器的运行方式:

c:\scripts\psexec.exe -accepteula \\targetserver -u domain\username -p password \\targetserver\c$\temp\se\se_install.cmd

远程运行时,我看到的最后一个输出是“安装SE 9.4代理”。在那之后,它似乎无限期地挂起。同时,我在本地服务器上查看正在运行的进程列表,并且installcimextensions.exe从未像这样显示在此列表中。我无法远程运行“start”命令找到任何已知问题,但我认为它可能是问题的一部分。或者它可能是我设置引号的方式或“-i silent”标志的问题?我还试图通过调用另一个包含该行的批处理文件来替换批处理中的“start”行,但没有骰子。

有什么建议吗?感谢。

1 个答案:

答案 0 :(得分:0)

在第一次回写写cd c:\temp\se\se_install.cmd之后,就是在本地运行你的当前工作目录是在有.exe的文件夹中,但是当你远程运行时你当前工作的目录是默认的,你有更改它以使.bat工作