来自https://www.pstips.net/question/4525.html和https://www.pstips.net/question/8759.html
1 java 通过cmd操作powershell
private static void exeCmd() {
InputStream in = null;
BufferedReader reader = null;
try {
String cmd = "cmd /c powershell E:/test.ps1 p1 p2";
Process p = Runtime.getRuntime().exec(cmd);
p.getOutputStream().close();
in = p.getInputStream();
reader = new BufferedReader(new InputStreamReader(in));
String line = null;
while ((line = reader.readLine()) != null) {
System.out.println(line);
}
System.out.println("out put end —");
p.waitFor();
p.destroy();
} catch (IOException e) {
e.printStackTrace();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
private static void exeCmd2() {
InputStream in = null;
BufferedReader reader = null;
try {
String cmd = "cmd /c powershell Get-Content E:/ate.txt";
Process p = Runtime.getRuntime().exec(cmd);
p.getOutputStream().close();
in = p.getInputStream();
reader = new BufferedReader(new InputStreamReader(in));
String line = null;
while ((line = reader.readLine()) != null) {
System.out.println(line);
}
System.out.println("out put end —");
p.waitFor();
p.destroy();
} catch (IOException e) {
e.printStackTrace();
} catch (InterruptedException e) {
e.printStackTrace();
}
}
2 java 直接操作powershell
public static void main(String[] args) throwsIOException {//String command = "powershell.exe your command";//Getting the version
String command = "powershell.exe Get-Content E:/ate.txt";//Executing the command
Process powerShellProcess =Runtime.getRuntime().exec(command);//Getting the results
powerShellProcess.getOutputStream().close();
String line;
System.out.println("Standard Output:");
BufferedReader stdout= new BufferedReader(newInputStreamReader(
powerShellProcess.getInputStream()));while ((line = stdout.readLine()) != null) {
System.out.println(line);
}
stdout.close();
System.out.println("Standard Error:");
BufferedReader stderr= new BufferedReader(newInputStreamReader(
powerShellProcess.getErrorStream()));while ((line = stderr.readLine()) != null) {
System.out.println(line);
}
stderr.close();
System.out.println("Done");
}
powershell相关操作文件 https://files.cnblogs.com/files/funkboy/ate.zip