ProcessBuilder pb = new ProcessBuilder("myshellScript.sh", "myArg1", "myArg2");
Map<String, String> env = pb.environment();
env.put("VAR1", "myValue");
env.remove("OTHERVAR");
env.put("VAR2", env.get("VAR1") + "suffix");
pb.directory(new File("myDir"));
Process p = pb.start();
帮助我理解变量。 喜欢(VAR1,myvalue),othervar,mydir
答案 0 :(得分:1)
pb.environment()
包含当前会话的环境变量。要运行此过程,您需要添加和删除变量。当调用process.start()时,它将能够使用它们
引用docs
环境,它是从变量到系统的依赖映射 值。初始值是当前环境的副本 进程(参见System.getenv())。
一般情况下,yoru代码在修改后的环境下运行带有MyArg1和MyArg2参数的myshellScript.sh。