gpt4 book ai didi

Java Runtime.exe() 不返回 PowerShell 命令输出

转载 作者:太空宇宙 更新时间:2023-11-04 10:22:00 24 4
gpt4 key购买 nike

我尝试使用 java Runtime.exe 运行以下命令

String command ="powershell (Get-item  \"D:\\test\" ).creationtime.ToString(\"yyyy-MM-dd'T'HH:mm:ss\")";

当我在Windows命令提示符上运行它时,它返回“2017-08-07T20:03:00”。

但是当我在 myMethod 中运行它时,程序也在运行,但没有返回给我。

我的方法:

private static void executePowerShellCommand(String command) {

String line = "";
command = "cmd /c " + command;
try {
Process process = Runtime.getRuntime().exec(command);
process.getOutputStream().close();
BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream()));
while ((line = reader.readLine()) != null) {
System.out.println(line);
}
reader.close();
System.out.println("Done");
} catch (java.io.IOException e) {
e.printStackTrace();
}
return;
}

最佳答案

我发现了问题

我的命令是错误的,正确的命令是:

String command = "powershell (Get-item '" + filePath + "' -Force).LastAccessTime.ToString(\\\"yyyy-MM-dd'T'HH:mm:ss'Z'\\\")";

关于Java Runtime.exe() 不返回 PowerShell 命令输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51038968/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com