gpt4 book ai didi

java - 通过java代码登录Linuxbox

转载 作者:太空宇宙 更新时间:2023-11-04 11:19:02 24 4
gpt4 key购买 nike

连接到 linux box 的 java 代码是什么?我通过 Putty 手动连接,所以我的问题是如何集成到 java 中并连接 Linux box 或者有任何其他连接方式。

我试过这段代码,但没有用。请

import java.io.InputStream;
import java.io.OutputStream;

public class Test {

public static void main( String[] args ) throws Exception {

String[] cm = {
"ssh= C:\\users\\...\\putty.exe",
"root@000.00.1.00" ,
"df -h"
};
Process p = Runtime.getRuntime().exec( cm );
InputStream in = p.getInputStream();
OutputStream out = p.getOutputStream();
out.write( "password".getBytes() );
}
}

最佳答案

SSH library for Java

您可能想为此使用 SSH 库。请参阅上述问题以获得答案。

手动调用 Putty 过于复杂,您的代码并没有按照您的预期进行。首先,您的子进程的标准输入不会在 Putty 窗口中结束。其次,任何时候从控制台读取密码时,它(通常)都不会直接从标准输入读取。

但是你为什么要这样做?我可以看到两个可能的原因

您想让 Java 程序以编程方式启动 Putty 吗?

在这种情况下,您启动子进程的想法会奏效,但是您需要在 Putty 和 Linux 机器之间设置 ssh key ,以避免每次都手动输入密码。

你想打开一个到 Linux 机器的连接并通过它运行一些命令吗?

您可能想先熟悉 SSH 及其功能。您可能可以在服务器上设置一个简单的 shell 脚本,使用 Java ssh 客户端登录并通过此连接运行它。

I tried this code it didn't work.

另外,欢迎来到 StackOverflow。说“它不起作用”而不提供有关问题的详细信息对我们没有帮助。您看到了哪些错误消息?出了什么问题,您预计会发生什么?

关于java - 通过java代码登录Linuxbox,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19439002/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com