Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/361.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用带有Putty私钥的Runtime.exec连接到远程linux系统_Java_Linux_Remote Access - Fatal编程技术网

Java 使用带有Putty私钥的Runtime.exec连接到远程linux系统

Java 使用带有Putty私钥的Runtime.exec连接到远程linux系统,java,linux,remote-access,Java,Linux,Remote Access,我想在我的系统上以编程方式使用Java的Runtime.exec open Putty并连接到远程linux系统。是否有语法将Putty私钥传递给方法runtime.exec并成功连接。如果我只是传递用户名和密码并尝试连接,我将在远程系统上收到拒绝访问错误。根据您的评论,我假设您正在尝试在linux服务器上运行某些命令,如 find /some-directory/ -type f -ecec grep -Hnw this-word {} ";" 通过bash或其他shell(与rcp相反)

我想在我的系统上以编程方式使用Java的Runtime.exec open Putty并连接到远程linux系统。是否有语法将Putty私钥传递给方法runtime.exec并成功连接。如果我只是传递用户名和密码并尝试连接,我将在远程系统上收到拒绝访问错误。

根据您的评论,我假设您正在尝试在linux服务器上运行某些命令,如

find /some-directory/ -type f -ecec grep -Hnw this-word {} ";"
通过bash或其他shell(与rcp相反)

如果是,则停止使用putty,这是一个交互式客户端,您可以登录到远程服务器并与连接的shell交互

我建议您最好使用jssh之类的东西,假设它仍然是当前的库


这样,您就可以很好地控制与远程服务器的交互流,iirc支持私钥/公钥。

很久以前,我不得不使用putty,但iirc可以指定一个配置文件/会话,以便在命令行上使用。因此,您需要首先在putty的ui或命令行配置中为putty配置配置文件/会话,然后将选择配置文件的开关添加到传递给exec的putty命令字符串中。谢谢,这很有效。但是有没有办法使用编程创建的会话。。。我可以使用JSch创建会话,因为我需要一个接口。我需要java以编程方式与Linux box交互。。谢谢