📅  最后修改于: 2023-12-03 14:45:38.348000             🧑  作者: Mango
当我们需要在Java程序中执行PowerShell命令时,需要找到PowerShell.exe 的位置。在Windows系统中,PowerShell.exe 的默认位置是C:\Windows\System32\WindowsPowerShell\v1.0\PowerShell.exe。
我们可以使用Java中的ProcessBuilder类来执行PowerShell命令,并指定PowerShell.exe 的位置。下面是一个示例代码:
import java.io.IOException;
public class PowerShellDemo {
public static void main(String[] args) {
String command = "Get-Process"; // 要执行的PowerShell命令
String powershellExe = "C:\\Windows\\System32\\WindowsPowerShell\\v1.0\\PowerShell.exe"; // PowerShell.exe 的位置
try {
ProcessBuilder builder = new ProcessBuilder(powershellExe, "-Command", command);
Process process = builder.start();
// 读取PowerShell输出
java.io.InputStream inputStream = process.getInputStream();
byte[] buffer = new byte[1024];
int read;
while ((read = inputStream.read(buffer)) != -1) {
System.out.println(new String(buffer, 0, read));
}
// 等待PowerShell进程结束
process.waitFor();
} catch (IOException | InterruptedException e) {
e.printStackTrace();
}
}
}
上述代码中,首先指定要执行的PowerShell命令为Get-Process,然后指定PowerShell.exe 的位置为C:\Windows\System32\WindowsPowerShell\v1.0\PowerShell.exe,接着使用ProcessBuilder构造器来创建进程,并传入参数。最后,等待PowerShell进程结束并读取输出。
以上就是如何在Java中执行PowerShell命令并找到PowerShell.exe 的位置的介绍。