运行进程构建器尝试执行“source”命令

时间:2011-09-08 20:21:03

标签: java process ioexception processbuilder

我正在运行流程构建器并尝试使用/ etc / profile来执行能够执行在常规shell中工作的命令。

String args[] = {"source", "/etc/profile"};
Process p = new ProcessBuilder(args).start();
InputStream is = p.getInputStream();
InputStreamReader isr = new InputStreamReader(is);
BufferedReader br = new BufferedReader(isr);

不幸的是它返回:

java.io.IOException: Cannot run program "source": java.io.IOException: error=2, No such file or directory

任何帮助都非常感谢!

1 个答案:

答案 0 :(得分:0)

bash在启动时支持环境变量BASH_ENV。将变量设置为脚本,并在执行前获取其内容。有关详细信息,请参阅bash(1)。

(能够通过另一个问题得到答案 - Setting a java ProcessBuilder environment with a bash script