【发布时间】:2019-07-24 01:43:58
【问题描述】:
我需要在 java 类中调用一个 bash 脚本。在调用 bash 脚本之前,需要导出一些变量。因此,当执行 bash 脚本时。它应该得到所需的导出值。
类 Javapgm {
public static void main(String [] args){
//导出 VAR=10
//调用bash脚本script.bash,让它可以使用这个VAR
}
}
【问题讨论】:
我需要在 java 类中调用一个 bash 脚本。在调用 bash 脚本之前,需要导出一些变量。因此,当执行 bash 脚本时。它应该得到所需的导出值。
类 Javapgm {
public static void main(String [] args){
//导出 VAR=10
//调用bash脚本script.bash,让它可以使用这个VAR
}
}
【问题讨论】:
要执行 bash 脚本,请使用 ProcessBuilder。
要设置环境变量,请调用environment()。
ProcessBuilder pb = new ProcessBuilder("/bin/sh", "-c", "script.bash");
pb.inheritIO();
pb.environment().put("VAR", "10");
Process p = pb.start();
p.waitFor();
【讨论】: