PsExec没有复制文件来执行

时间:2012-07-17 14:47:54

标签: windows vbscript psexec

我想运行一个名为“systemInfo.vbs”的脚本,该脚本将日志文件输出到系统名称和服务包。

在命令提示符下,我正在执行“PsExec.exe \ REMOTECOMPUTER -c systemInfo.vbs”。

我是从本地系统上只有PsExec.exe和systemInfo.vbs

的目录运行的

我收到错误

  

PsExec无法在REMOTESERVER上启动systemInfo.vbs:“系统   找不到指定的文件。

知道为什么会这样吗?我以为我可以这样做来运行远程脚本,好像它在远程服务器上一样?

2 个答案:

答案 0 :(得分:1)

您需要在远程PC上或通过PC上的共享上的UNC路径或网络驱动程序提供脚本的路径。因此,如果脚本在远程c:\

上有副本
PsExec.exe \\REMOTECOMPUTER -c c:\systemInfo.vbs

或者如果它位于共享\\ mypc \ shared

PsExec.exe \\REMOTECOMPUTER -c \\mypc\shared\systemInfo.vbs

此外,您还需要确保您在启动脚本的PC上具有管理员权限,并且还取决于您的脚本在远程PC上可能执行的操作。

答案 1 :(得分:0)

对于将来可能遇到此问题的任何人,-c标志 允许您复制文件以供执行;文档没有指定,但您需要使用本地计算机上的路径跟随您要复制和执行的二进制文件。 (我已向文档提交了拉取请求。)

例如,通过将Web安装程序(名为vs_professional.exe)复制到该计算机({{}},可以将“Blend for Visual Studio SDK for .NET”添加到Visual Studio 2017 Professional的远程安装中。 {1}})使用凭据(注意DOMAIN仅在您使用域而不是本地用户时),并使用适当的参数执行它。

\\TargetMachine

另一个人为的例子:

D:\PSTools\PsExec64.exe "\\TargetMachine" -u "DOMAIN\user" -p "pass" -h -c "D:\deploy\vs_professional.exe" vs_professional.exe modify --installPath "C:\Program Files (x86)\Microsoft Visual Studio\2017\Professional" --add Microsoft.Component.Blend.SDK.WPF --passive