我尝试过研究进程构建器,但我不确定如何将 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。
预先感谢您的任何帮助!
您需要使用 ProcessBuilder 设置 shell 调用。执行如下命令:
/bin/bash -l -c "The entire command line that you want to execute"
构建时ProcessBuilder
注意将要执行的命令作为一个统一的字符串传递,例如:
new ProcessBuilder("bash", "-l", "-c", "ps ax")
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)