我需要通过.bat
在远程PC上启动psexec
文件。远程电脑设有 usr 和 pwd :
usr= username
pwd= password"123
在cmd
中工作正常,只需在\
前面加"
即可
(psexec \\remote-pc -d -u username -p password\"123
)
但重点是我在 build.xml 中定义了这个arg行,并且我无法使用ANT
启动它。
我尝试使用"
更改"
以及我找到的其他内容,但没办法。
任何想法?也许它更容易更改我的机器的 pwd :-)
谢谢你!答案 0 :(得分:2)
根据经验,使用1-n嵌套的arg值元素而不是arg line,
请参阅ant manual commandline arguments。
将你的arg行分成几个arg值...应该有效,见:
<exec executable="c:\pstools\psexec.exe">
<arg value="\\hostname"/>
<arg value="/accepteula"/>
<arg value="cmd"/>
<arg value="/c"/>
<arg value="echo"/>
<arg value="password"123"/>
</exec>
输出:
[exec] PsExec v1.98 - Execute processes remotely
[exec] Copyright (C) 2001-2010 Mark Russinovich
[exec] Sysinternals - www.sysinternals.com
[exec] cmd exited with error code 0.
而::
<exec executable="c:\pstools\psexec.exe">
<arg line="\\hostname /accepteula cmd /c echo password"123"/>
</exec>
输出:
BUILD FAILED
.. unbalanced quotes in \\hostname /accepteula cmd /c echo password"123