如何使用Java执行SSH命令行?

时间:2012-05-31 16:05:46

标签: java ssh exec

我试过

Runtime.getRuntime().exec("ssh guest@guest password");
Runtime.getRuntime().exec("do something at guest@guest");

但这会提示我输入密码。 我想自动执行ssh登录,并执行类似在远程客户端中创建文件的操作。

最好的方法是什么?

由于

2 个答案:

答案 0 :(得分:1)

自动登录的最佳方法是设置ssh密钥。请参阅HOWTO

对于实际的ssh交互,不是执行外部命令,而是使用合适的库可能是有意义的。有关指示,请参阅SSH library for Java

答案 1 :(得分:1)

您可以考虑使用此库

http://www.jcraft.com/jsch/index.html

或者 sshj

https://github.com/shikhar/sshj/

在这里你会发现一个类似的问题: Send ssh command from Java code