从远程服务器获取环境变量

时间:2013-01-11 13:47:32

标签: java ssh

Java中是否有办法从远程服务器获取环境变量? 我目前正在执行:

Runtime.getRuntime().exec(new String[] { 
     "ssh", "myuser@myserver", "source myenvfile; echo $MY_VAR" 
}); 

但它返回空白(虽然我的变量应包含某些内容)。

我得到df等命令的结果,echo没有结果。有人能告诉我我做错了什么吗?

编辑:有没有人有更好的解决方案呢?

NB:我想避免使用SSH库。

提前感谢您帮助我。

1 个答案:

答案 0 :(得分:2)

实际上有一个更好的解决方案:使用ProcessBuilder

Runtime.getRuntime().exec()quite a few problems,这使得它不适合流程执行。