我正试图使批处理文件在远程服务器上运行脚本。如果我在cmd提示符中分别输入下面的命令,它工作得很好,但在我输入psexec命令后,它似乎挂起了。只有当我退出psexec远程连接时,它才继续执行批处理文件的其余部分。其余的命令在我的本地计算机上运行(我不希望这样)。有人有什么想法或建议吗?
psexec \ServName -u DOMAINUserName -p password cmd.exe
pause
cd c:UsersUserName
pause
cscript \NetworkNamefilepathblankTest.vbs
您可以将命令捆绑到一个批处理文件中,然后使用一行执行该文件:
psexec \ServName -u DOMAINUserName -p password cmd.exe -c mybatchfile.bat
这将导致文件首先被复制到远程计算机。或者,如果您对此有问题,请先复制文件,然后执行它;注意不同的参数,/c
vs -c
:
copy mybatchfile.bat \ServNameAdmin$
psexec \ServName -u DOMAINUserName -p password cmd.exe /c mybatchfile.bat
就我个人而言,如果我想在批处理中启动一个后台进程,我会使用这个:start /B cmd /C "mycommand"
在你的情况下应该给出:start /B cmd /C "psexec \ServName -u DOMAINUserName -p password cmd.exe"