如何使用 PsExec 运行多个命令,以及如何导出环境变量?
我可以通过执行以下操作来运行两个命令,但是当我尝试导出环境变量时,第二个命令会出错。
运行两个命令:
psexec \\servername cmd /c p4 info & dir
^ 这有效
尝试导出环境变量,然后运行另一个命令:
psexec \\servername cmd /c set P4PORT=xx.xxx.xx.xx & p4 -c client -P ################## -u user diff -f //dir/dir2/dir3/...
^ 这在第二个命令上出错,它抱怨我传入的客户端规范名称,但如果我只运行第二个命令,它就会运行正常。就像第一个命令抛弃了第二个命令一样。
谢谢!
答案1
我相信你会发现第二个命令是在本地机器上运行的,而不是在远程机器上运行的。你需要使用引号,如下所示:
psexec \\servername cmd /c "p4 info & dir"