运行 通过 Java 远程执行 Powershell 脚本
Running Powershell script remotely through Java
我可以通过 Powershell 本身运行 下面的 powershell 命令,
invoke-command -ComputerName "compName" -filepath "c:\script.ps1" -credential "admin"
但是当我通过 Java 尝试 运行 时,我得到了一个错误。虽然 Java 听起来 "Invoke-command" 不被识别为 运行 的程序。如果是这样,有没有其他的解决办法?
Process p = new ProcessBuilder()
.inheritIO()
.command("invoke-command", "-computername", "compName",
"-filepath", "C:\script.ps1").start();
错误,
Cannot run program "invoke-command": CreateProcess error=2, The system cannot find the file specified
P.S。该错误与提供的文件路径无关,而是与调用命令本身有关。
谢谢。
如您所写,invoke-command
是一个 Powershell 命令,因此您必须像这样调用 Powershell tu 运行 命令:
Process p = new ProcessBuilder()
.inheritIO()
.command("powershell", "invoke-command", "-computername", "compName",
"-filepath", "C:\script.ps1").start();
我可以通过 Powershell 本身运行 下面的 powershell 命令,
invoke-command -ComputerName "compName" -filepath "c:\script.ps1" -credential "admin"
但是当我通过 Java 尝试 运行 时,我得到了一个错误。虽然 Java 听起来 "Invoke-command" 不被识别为 运行 的程序。如果是这样,有没有其他的解决办法?
Process p = new ProcessBuilder()
.inheritIO()
.command("invoke-command", "-computername", "compName",
"-filepath", "C:\script.ps1").start();
错误,
Cannot run program "invoke-command": CreateProcess error=2, The system cannot find the file specified
P.S。该错误与提供的文件路径无关,而是与调用命令本身有关。
谢谢。
如您所写,invoke-command
是一个 Powershell 命令,因此您必须像这样调用 Powershell tu 运行 命令:
Process p = new ProcessBuilder()
.inheritIO()
.command("powershell", "invoke-command", "-computername", "compName",
"-filepath", "C:\script.ps1").start();