`
mengtaohj
  • 浏览: 23531 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

java远程执行linux命令

 
阅读更多

如何实现JAVA远程操控linux服务器,代码如下:

 

  1. package hb.linux;  
  2.   
  3. import java.io.BufferedReader;  
  4. import java.io.IOException;  
  5. import java.io.InputStream;  
  6. import java.io.InputStreamReader;  
  7.   
  8. import ch.ethz.ssh2.Connection;  
  9. import ch.ethz.ssh2.Session;  
  10. import ch.ethz.ssh2.StreamGobbler;  
  11.   
  12. public class TestCtrCommond {  
  13.   
  14.     public static void main(String[] args) {  
  15.           
  16.         String hostname = "129.17.17.20";  
  17.         String username = "weblogic";  
  18.         String password = "weblogic";  
  19.         //指明连接主机的IP地址  
  20.         Connection conn = new Connection(hostname);  
  21.         Session ssh = null;  
  22.         try {  
  23.             //连接到主机  
  24.             conn.connect();  
  25.             //使用用户名和密码校验  
  26.             boolean isconn = conn.authenticateWithPassword(username, password);  
  27.             if(!isconn){  
  28.                 System.out.println("用户名称或者是密码不正确");  
  29.             }else{  
  30.                 System.out.println("已经连接OK");  
  31.                 ssh = conn.openSession();  
  32.                 //使用多个命令用分号隔开  
  33. //              ssh.execCommand("pwd;cd /tmp;mkdir hb;ls;ps -ef|grep weblogic");  
  34.                 ssh.execCommand("cd /app/weblogic/Oracle/Middleware/user_projects/domains/base_domain;./startWebLogic.sh &");  
  35.                 //只允许使用一行命令,即ssh对象只能使用一次execCommand这个方法,多次使用则会出现异常  
  36. //              ssh.execCommand("mkdir hb");  
  37.                 //将屏幕上的文字全部打印出来  
  38.                 InputStream  is = new StreamGobbler(ssh.getStdout());  
  39.                 BufferedReader brs = new BufferedReader(new InputStreamReader(is));  
  40.                 while(true){  
  41.                     String line = brs.readLine();  
  42.                     if(line==null){  
  43.                         break;  
  44.                     }  
  45.                     System.out.println(line);  
  46.                 }  
  47.                   
  48.             }  
  49.             //连接的Session和Connection对象都需要关闭  
  50.             ssh.close();  
  51.             conn.close();  
  52.               
  53.         } catch (IOException e) {  
  54.             // TODO Auto-generated catch block  
  55.             e.printStackTrace();  
  56.         }  
  57.           
  58.     }  
  59.   
  60. }  

 

已经写的很清楚明了了,再不明白我也没办法。

分享到:
评论

相关推荐

    java通过代码登录远程linux服务器并执行linux命令源码以及jar包

    在Java编程中,有时我们需要实现一个功能,即通过代码远程登录Linux服务器并执行特定的Linux命令。这在自动化运维、远程脚本执行等场景中非常常见。本篇将详细讲解如何实现这一目标,并提供相关源码及jar包。 首先...

    java开发的swing客户端,远程执行linux命令.zip

    本项目“java开发的swing客户端,远程执行linux命令”显然旨在利用Swing构建一个桌面应用,该应用的核心功能是远程控制Linux服务器,执行命令。这涉及到Java中的网络编程和Linux系统的交互。具体来说,开发者可能使用...

    java执行远程linux服务器命令

    在实际情况中,这个文件可能包含一个简单的Java程序,展示了如何使用JSch或其他工具来执行远程Linux命令。如果能查看到具体的代码内容,我们将能够更深入地了解其实现细节。 总结,通过Java执行远程Linux服务器命令...

    登录linux执行命令

    通过监听特定的队列,当有新消息到达时,程序将被动地接收并解析这些消息,这些消息可能是执行Linux命令的指示。 其次,"expect4j"是一个Java库,它允许程序模拟用户交互,尤其是用于自动化SSH登录。SSH(Secure ...

    java代码执行linux系统命令

    java代码执行linux系统命令

    java语言 远程连接linux并自定义执行目录执行自己想要的指令

    本方法是用java语言写的一个方法,可以远程连接linux系统,并在自己想要的正确的运行目录下去执行自己想要执行的正确的命令;java语言可以直接将此方法放入服务层调用。

    java应用程序远程登录linux并执行其命令

    根据给定的信息,本文将详细解释如何通过Java应用程序实现对Linux服务器的远程登录,并执行相应的命令。本案例中,我们采用的是Ganymed SSH2库来实现这一功能。 ### 一、Ganymed SSH2 库简介 Ganymed SSH2 是一个...

    sshxcute_--java远程执行linuxunix命令的工具类_sshxcute.zip

    sshxcute_--java远程执行linuxunix命令的工具类_sshxcute

    Java 调用 Linux shell 命令执行框架:sshxcute

    sshxcute 就是这样一个框架工具集,它基于 JSCH 构建,允许工程师利用Java 代码通过 SSH 连接远程批量执行 Linux/UNIX 系统上的命令或者脚本,同时加入了判断成功与否,取回输出等多种实用功能。sshxcute 不管是针对...

    Java远程连接Linux服务器并执行命令及上传文件功能

    Java远程连接Linux服务器并执行命令及上传文件功能 本文主要介绍了如何使用Java语言远程连接Linux服务器并执行命令及上传文件的功能。该功能主要通过使用JSch库和Apache Commons Logging库来实现远程连接和文件上传...

    java连接linux,执行shell命令的工具类 sshxcute.jar

    在Java开发中,有时我们需要远程连接到Linux服务器执行shell命令,比如进行系统管理、自动化运维或者数据处理等任务。...SSHXCUTE.jar简化了Java开发中的SSH操作,使得远程执行Linux命令变得更加便捷和安全。

    Java中常用的Linux命令.docx

    Java中常用的Linux命令 Linux命令是Java开发中不可或缺的一部分,掌握这些命令可以提高开发效率和解决问题的能力。本文总结了常用的Linux命令,涵盖文件管理、进程管理、网络管理、文件传输和其他方面。 文件管理 ...

    java控制台输入cmd命令, ssh远程linux shell命令, 并打印命令输出到控制台

    在Java编程中,有时我们需要与操作系统进行交互,执行系统级别的命令,例如在控制台执行CMD命令或者通过SSH连接远程Linux服务器执行shell命令。这在自动化脚本、系统管理或者远程监控等场景中非常常见。本篇文章将...

    Java实现Linux的远程拷贝

    一旦连接建立成功,我们可以使用`session`对象的`execCommand()`方法执行Linux命令,比如`cp`或`rsync`进行文件拷贝。例如: ```java Channel channel = session.openChannel("exec"); ((ChannelExec) channel)....

    Java应用程序远程登录linux并执行其命令.pdf

    Java应用程序远程登录Linux并执行命令的实现原理和实践 Java应用程序远程登录Linux并执行命令是Java开发中一个常见的需求,例如在自动化运维、云计算、DevOps等领域都需要使用远程登录和命令执行技术。下面我们将...

    Java远程登录Linux调用shell

    java远程登录Linux,并执行shell命令。

    java开发中常用的linux命令汇总

    以下是一些Java开发中常用的Linux命令,它们对于优化开发流程至关重要。 1. **ls**:列出目录内容。`ls -l` 可以查看详细信息,包括文件权限、所有者、大小和修改时间。 2. **cd**:切换目录。用于在文件系统中...

    Java中通过jsch来连接远程服务器执行linux命令

    本文将详细介绍如何使用JSCH库在Java中连接远程服务器并执行Linux命令。 首先,我们需要导入JSCH库。如果你使用的是Maven项目,可以在pom.xml文件中添加以下依赖: ```xml <groupId>com.jcraft</groupId> ...

    java操作DOS命令

    Java操作DOS命令主要指的是通过Java程序调用操作系统(如Windows、Linux等)的命令行接口,执行系统级别的操作。这种技术在很多场景下都非常实用,例如自动化测试、系统管理或者进行一些系统级别的数据处理。下面...

Global site tag (gtag.js) - Google Analytics