【问题标题】:need help to understand the code [closed]需要帮助来理解代码[关闭]
【发布时间】:2012-10-10 10:20:50
【问题描述】:
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

【问题讨论】:

  • 检查ProcessBuilder 类。您正在构建将在 shell 上执行的命令。

标签: java unix shell-exec


【解决方案1】:
pb.environment()

包含当前会话的环境变量。要运行此过程,您需要添加和删除变量。当 process.start() 被调用时,它将能够使用它们

引用docs

一个环境,它是从变量到系统依赖的映射 价值观。初始值是当前环境的副本 进程(参见 System.getenv())。

一般来说,yoru 代码在修改后的环境下运行带有参数 MyArg1 和 MyArg2 的 myshellScript.sh。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-29
    • 2010-11-04
    • 1970-01-01
    • 1970-01-01
    • 2016-11-24
    相关资源
    最近更新 更多