我有一个查询 VmWare 主机信息的 powerCLI 脚本。我可以通过这样做从java运行脚本:
Runtime runtime = Runtime.getRuntime();
String cmd = "powershell -ExecutionPolicy RemoteSigned -noprofile -noninteractive -file \"" + scriptPath + "\"";
Process proc = runtime.exec(cmd);
我已经验证该脚本在从 Powershell 命令行或通过 Java 运行时的工作方式相同。但是,我反复注意到,当从 Java 调用时,大约需要 45 秒才能完成(相比之下,从命令行大约需要 20 秒)。
知道为什么性能差异吗?谢谢
编辑:为了澄清:在我的 powerCLI 脚本中,我捕获开始和结束时间,然后从脚本中打印出持续时间。从 Powershell 脚本打印输出中观察到提到的 45 与 20 秒。所以这个时间不包括与调用和返回相关的开销。