简单的Java SSH客户端:jcabi-ssh
jopen
10年前
jcabi-ssh使用可以在Java中,只需要几行代码就能通过SHH来执行一个 shell 命令。
String hello = new Shell.Plain( new SSH( "ssh.example.com", 22, "yegor", "-----BEGIN RSA PRIVATE KEY-----..." ) ).exec("echo 'Hello, world!'");
jcabi-ssh是JSch的一个便利封装,JSch是SSH2的一个著名纯Java实现。
这里是一个更复杂的情况,在这里我通过SSH上传文件,然后读回其grepped内容:
Shell shell = new SSH( "ssh.example.com", 22, "yegor", "-----BEGIN RSA PRIVATE KEY-----..." ); File file = new File("/tmp/data.txt"); new Shell.Safe(shell).exec( "cat > d.txt && grep 'some text' d.txt", new FileInputStream(file), Logger.stream(Level.INFO, this), Logger.stream(Level.WARNING, this) );