【发布时间】:2011-11-13 08:27:07
【问题描述】:
我已尝试研究进程构建器,但我不确定如何将 bash 环境引入进程。
例如,我正在使用以下内容来启动我的流程:
Process p = new ProcessBuilder(args).start();
InputStream is = p.getInputStream();
InputStreamReader isr = new InputStreamReader(is);
BufferedReader br = new BufferedReader(isr);
我希望我的标准 shell 环境(来自 /etc/profile、.bashrc 等)来源于该进程。
对不起,如果我没有使用正确的术语 - 仍在学习 java。
提前感谢您的帮助!
【问题讨论】:
-
如果您还没有合适的环境,它可能是像
bash -l这样的选项。在开始 Java 之前没有 bash 环境有什么原因吗? -
这里不完全清楚......你的意思是你正在编写一个Java程序,它将作为子进程执行
bashshell? -
可能执行如下命令:
/usr/bin/env bash -c ". /etc/bash.bashrc; cmd" -
@erickson 请查看更新 - 我想完全按照您在 cmets 中的说明进行操作。
标签: java bash shell process environment