如何在java getRuntime()。exec()中生成程序时为ps设置argv [0]名称?
Runtime rt = Runtime.getRuntime();
String[] cmd = {"/bin/sh", "-c", "ls > hello"};
rt.exec(cmd);
我希望进程在ps ef输出中有另一个名称。 在C中你可以覆盖argv [0]指针,如何在java中做到这一点?
答案 0 :(得分:0)
在Java中,您需要创建一个指向可执行文件的符号链接并调用它。我认为您无法访问argv[0]
答案 1 :(得分:-2)
@ user1335897:ProcessBuilder提供比Runtime更多的灵活性,请尝试使用以下代码:
ProcessBuilder processBuilder = new ProcessBuilder(args);
if (envMap != null) {
processBuilder.environment().putAll(envMap);
}
try {
Process process = processBuilder.start();
process.waitFor();
} catch (IOException ioe) {
} catch (InterruptedException ie) {
}