当前位置: 首页>>代码示例>>Java>>正文


Java Session.getStdout方法代码示例

本文整理汇总了Java中ch.ethz.ssh2.Session.getStdout方法的典型用法代码示例。如果您正苦于以下问题:Java Session.getStdout方法的具体用法?Java Session.getStdout怎么用?Java Session.getStdout使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在ch.ethz.ssh2.Session的用法示例。


在下文中一共展示了Session.getStdout方法的13个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: startTest

import ch.ethz.ssh2.Session; //导入方法依赖的package包/类
@Override
public void startTest(){
	Session session=null;
	try {
		getConnection();
		if(connection==null)
			throw new IOException("Unable to connect the server!");
	    session = connection.openSession();
		session.execCommand(shellofstartTest);
		System.out.println("Here is some information about the remote host:");
		InputStream stderr = new StreamGobbler(session.getStderr());
		BufferedReader br = new BufferedReader(new InputStreamReader(stderr));
		InputStream stdout = new StreamGobbler(session.getStdout());
		BufferedReader stdbr = new BufferedReader(new InputStreamReader(stdout));
		System.out.println("Test had been started successfully!");
	} catch (IOException e) {
		e.printStackTrace();
		System.exit(-1);
	}finally{
		if(session != null)
    		   session.close();
    	   closeConnection();
	}
}
 
开发者ID:zhuyuqing,项目名称:bestconf,代码行数:25,代码来源:SUTTest.java

示例2: exec

import ch.ethz.ssh2.Session; //导入方法依赖的package包/类
public String exec(String cmds) {
    InputStream in = null;
    String result = "";
    try {
        if (this.login()) {
            Session session = conn.openSession();
            session.execCommand(cmds);
            in = session.getStdout();
            result = this.processStdout(in, this.charset);
            session.close();
            conn.close();
        }
    } catch (IOException e1) {
        e1.printStackTrace();
    }
    return result;
}
 
开发者ID:Transwarp-DE,项目名称:Transwarp-Sample-Code,代码行数:18,代码来源:RemoteShellTool.java

示例3: exec

import ch.ethz.ssh2.Session; //导入方法依赖的package包/类
public void exec(String command) 
	throws IOException{
	
	// Sending command to server 
	if (verboseMode == true){
		consoleStream.println(
				"Executing" +
				" " +
				"'" + 
				command +
					"'" +
				".");			
	}
	
	Session session = connection.openSession();
	session.execCommand(command);
	
	// Copying server stdout on local stdout
	InputStream remoteStdout = 
		new StreamGobbler(session.getStdout());

	BufferedReader remoteStdoutReader = 
		new BufferedReader(new InputStreamReader(remoteStdout));

	String line;
	
	while ((line = remoteStdoutReader.readLine()) != null){
		consoleStream.println(line);
	}
	
	// Close session
	session.close();
}
 
开发者ID:ncleclipse,项目名称:ncl30-eclipse,代码行数:34,代码来源:RemoteUtility.java

示例4: exeRemoteConsole

import ch.ethz.ssh2.Session; //导入方法依赖的package包/类
public static List<String> exeRemoteConsole(String hostname, String username, String password, String cmd) {
        List<String> result = new ArrayList<String>();
        //指明连接主机的IP地址
        Connection conn = new Connection(hostname);
        Session ssh = null;
        try {
            //连接到主机
            conn.connect();
            //使用用户名和密码校验
            boolean isconn = conn.authenticateWithPassword(username, password);
            if (!isconn) {
                logger.error("用户名称或者是密码不正确");
            } else {
                logger.info("已经连接OK");
                ssh = conn.openSession();
                //使用多个命令用分号隔开
//              ssh.execCommand("pwd;cd /tmp;mkdir shb;ls;ps -ef|grep weblogic");
                ssh.execCommand(cmd);
                //只允许使用一行命令,即ssh对象只能使用一次execCommand这个方法,多次使用则会出现异常
//              ssh.execCommand("mkdir hb");
                //将屏幕上的文字全部打印出来
                InputStream is = new StreamGobbler(ssh.getStdout());
                BufferedReader brs = new BufferedReader(new InputStreamReader(is));
                for (String line = brs.readLine(); line != null; line = brs.readLine()) {
                    result.add(line);
                }
            }
            //连接的Session和Connection对象都需要关闭
            if (ssh != null) {
                ssh.close();
            }
            conn.close();
        } catch (IOException e) {
            logger.error("", e);
        }
        return result;
    }
 
开发者ID:canmind,项目名称:fastdfs-zyc,代码行数:38,代码来源:Tools.java

示例5: exportDataBase

import ch.ethz.ssh2.Session; //导入方法依赖的package包/类
/**
     * export database;
     */
    public void exportDataBase() {
        logger.info("start backup database");
        String username = Config.getProperty("jdbc.username_dev");
        String password = Config.getProperty("jdbc.password_dev");
        String database = Config.getProperty("jdbc.database");
        String host = Config.getProperty("jdbc.host_dev");
        String os = System.getProperty("os.name");
        String file_path = null;
//        if (os.toLowerCase().startsWith("win")) {       //根据系统类型
//            file_path = System.getProperty("user.dir") + "\\sql\\";
//        } else {
//            file_path = System.getProperty("user.dir") + "/sql/";//保存的路径
//        }
        file_path = System.getProperty("myblog.path") + "sql";
        String file_name = "/myblog" + DateTime.now().toString("yyyyMMddHHmmss") + ".sql";
        String file = file_path + file_name;
        logger.info("file_path and file_name: " + file);
        //server
        String s_host = Config.getProperty("server.host");
        Integer s_port = Config.getIntProperty("server.port");
        String s_username = Config.getProperty("server.username");
        String s_password = Config.getProperty("server.password");
        try {
            StringBuffer sb = new StringBuffer();
            sb.append("mysqldump -u " + username + " -p" + password + " -h " + host + " " +
                    database + " >" + file);
            String sql = sb.toString();
            logger.info(sql);
            //connect to server
            Connection connection = new Connection(s_host, s_port);
            connection.connect();
            boolean isAuth = connection.authenticateWithPassword(s_username, s_password);
            if (!isAuth) {
                logger.error("server login error");
            }
            Session session = connection.openSession();
            session.execCommand(sql);
            InputStream stdout = new StreamGobbler(session.getStdout());
            BufferedReader br = new BufferedReader(new InputStreamReader(stdout));
            while (true) {
                String line = br.readLine();
                if (line == null)
                    break;
                System.out.println(line);
            }
            session.close();
            connection.close();
            stdout.close();
            br.close();
            logger.info("backup finish");
            logger.info(sb.toString());
        } catch (Exception e) {
            logger.error("error", e);
        }
    }
 
开发者ID:Zephery,项目名称:newblog,代码行数:59,代码来源:MysqlUtil.java

示例6: doCommond

import ch.ethz.ssh2.Session; //导入方法依赖的package包/类
/**
 * 远程执行命令
 * @param ip
 * @param user
 * @param pwd
 * @param cmd
 * @return
 */
public static String doCommond(Connection conn,String cmd){
	String result = "";
       try {
           if(conn==null){
           	System.out.println("请先链接服务器");
           }else{
               Session sess = conn.openSession();
               sess.execCommand(cmd);
               InputStream stdout = new StreamGobbler(sess.getStdout());
   			BufferedReader stdoutReader = new BufferedReader(new InputStreamReader(stdout));
   			while(true){
   				String line = stdoutReader.readLine();
   				if (line == null)
   					break;
   				result+=line+StaticKeys.SPLIT_BR;
   			}
   			//连接的Session和Connection对象都需要关闭 
   			stdoutReader.close();
               sess.close();
           }
       } catch (IOException e) {
       	System.out.println("执行linux命令错误:"+e.toString());
       }
       if(result.endsWith(StaticKeys.SPLIT_BR)){
       	result =  result.substring(0, result.length()-StaticKeys.SPLIT_BR.length());
       }
       
       if(!StringUtils.isEmpty(result)){
       	if(cmd.contains("DEV")||cmd.contains("iostat")){
       		if(result.contains("</br></br>")){
       			result = result.substring(result.lastIndexOf("</br></br>")+10);
       		}
           }
       	if(cmd.contains("mpstat")){
       		if(result.contains("</br></br>")){
       			result = result.substring(result.lastIndexOf("</br></br>")+10);
       			int s = result.indexOf("</br>")+5;
       			s = result.indexOf("</br>",s);
       			result = result.substring(0,s);
       		}
           }
       }
       return result;
}
 
开发者ID:tianshiyeben,项目名称:myrover,代码行数:53,代码来源:CtrCommond.java

示例7: main

import ch.ethz.ssh2.Session; //导入方法依赖的package包/类
public static void main(String[] args)
{
	String hostname = "127.0.0.1";
	String username = "joe";
	String password = "joespass";

	try
	{
		/* Create a connection instance */

		Connection conn = new Connection(hostname);

		/* Now connect */

		conn.connect();

		/* Authenticate.
		 * If you get an IOException saying something like
		 * "Authentication method password not supported by the server at this stage."
		 * then please check the FAQ.
		 */

		boolean isAuthenticated = conn.authenticateWithPassword(username, password);

		if (isAuthenticated == false)
			throw new IOException("Authentication failed.");

		/* Create a session */

		Session sess = conn.openSession();

		sess.execCommand("uname -a && date && uptime && who");

		System.out.println("Here is some information about the remote host:");

		/* 
		 * This basic example does not handle stderr, which is sometimes dangerous
		 * (please read the FAQ).
		 */

		InputStream stdout = new StreamGobbler(sess.getStdout());

		BufferedReader br = new BufferedReader(new InputStreamReader(stdout));

		while (true)
		{
			String line = br.readLine();
			if (line == null)
				break;
			System.out.println(line);
		}

		/* Show exit status, if available (otherwise "null") */

		System.out.println("ExitCode: " + sess.getExitStatus());

		/* Close this session */

		sess.close();

		/* Close the connection */

		conn.close();

	}
	catch (IOException e)
	{
		e.printStackTrace(System.err);
		System.exit(2);
	}
}
 
开发者ID:dreajay,项目名称:jcode,代码行数:72,代码来源:Basic.java

示例8: main

import ch.ethz.ssh2.Session; //导入方法依赖的package包/类
public static void main(String[] args)
{
	String hostname = "my-ssh-server";
	String username = "joe";
	String password = "joespass";

	String proxyHost = "192.168.1.1";
	int proxyPort = 3128; // default port used by squid
	
	try
	{
		/* Create a connection instance */

		Connection conn = new Connection(hostname);

		/* We want to connect through a HTTP proxy */
		
		conn.setProxyData(new HTTPProxyData(proxyHost, proxyPort));
		
		// if the proxy requires basic authentication:
		// conn.setProxyData(new HTTPProxyData(proxyHost, proxyPort, "username", "secret"));
		
		/* Now connect (through the proxy) */

		conn.connect();

		/* Authenticate.
		 * If you get an IOException saying something like
		 * "Authentication method password not supported by the server at this stage."
		 * then please check the FAQ.
		 */

		boolean isAuthenticated = conn.authenticateWithPassword(username, password);

		if (isAuthenticated == false)
			throw new IOException("Authentication failed.");

		/* Create a session */

		Session sess = conn.openSession();

		sess.execCommand("uname -a && date && uptime && who");

		System.out.println("Here is some information about the remote host:");

		/* 
		 * This basic example does not handle stderr, which is sometimes dangerous
		 * (please read the FAQ).
		 */

		InputStream stdout = new StreamGobbler(sess.getStdout());

		BufferedReader br = new BufferedReader(new InputStreamReader(stdout));

		while (true)
		{
			String line = br.readLine();
			if (line == null)
				break;
			System.out.println(line);
		}

		/* Show exit status, if available (otherwise "null") */

		System.out.println("ExitCode: " + sess.getExitStatus());

		/* Close this session */

		sess.close();

		/* Close the connection */

		conn.close();

	}
	catch (IOException e)
	{
		e.printStackTrace(System.err);
		System.exit(2);
	}
}
 
开发者ID:dreajay,项目名称:jcode,代码行数:82,代码来源:BasicWithHTTPProxy.java

示例9: sendBytes

import ch.ethz.ssh2.Session; //导入方法依赖的package包/类
private void sendBytes(Session sess, byte[] data, String fileName, String mode) throws IOException {
    OutputStream os = sess.getStdin();
    InputStream is = new BufferedInputStream(sess.getStdout(), 512);

    readResponse(is);

    String cline = "C" + mode + " " + data.length + " " + fileName + "\n";

    os.write(cline.getBytes());
    os.flush();

    readResponse(is);

    os.write(data, 0, data.length);
    os.write(0);
    os.flush();

    readResponse(is);

    os.write("E\n".getBytes());
    os.flush();
}
 
开发者ID:alibaba,项目名称:jstorm,代码行数:23,代码来源:MyScpClient.java

示例10: sendFiles

import ch.ethz.ssh2.Session; //导入方法依赖的package包/类
private void sendFiles(Session sess, String[] files, String mode) throws IOException {
    byte[] buffer = new byte[8192];

    OutputStream os = new BufferedOutputStream(sess.getStdin(), 40000);
    InputStream is = new BufferedInputStream(sess.getStdout(), 512);

    readResponse(is);

    for (int i = 0; i < files.length; i++) {
        File f = new File(files[i]);
        long remain = f.length();

        String cline = "C" + mode + " " + remain + " " + f.getName() + "\n";

        os.write(cline.getBytes());
        os.flush();

        readResponse(is);

        FileInputStream fis = null;

        try {
            fis = new FileInputStream(f);

            while (remain > 0) {
                int trans;
                if (remain > buffer.length)
                    trans = buffer.length;
                else
                    trans = (int) remain;

                if (fis.read(buffer, 0, trans) != trans)
                    throw new IOException("Cannot read enough from local file " + files[i]);

                os.write(buffer, 0, trans);

                remain -= trans;
            }

            fis.close();
        } catch (IOException e) {
            if (fis != null) {
                fis.close();
            }
            throw (e);
        }

        os.write(0);
        os.flush();

        readResponse(is);
    }

    os.write("E\n".getBytes());
    os.flush();
}
 
开发者ID:alibaba,项目名称:jstorm,代码行数:57,代码来源:MyScpClient.java

示例11: receiveFiles

import ch.ethz.ssh2.Session; //导入方法依赖的package包/类
private void receiveFiles(Session sess, String[] files, String target) throws IOException {
    byte[] buffer = new byte[8192];

    OutputStream os = new BufferedOutputStream(sess.getStdin(), 512);
    InputStream is = new BufferedInputStream(sess.getStdout(), 40000);

    os.write(0x0);
    os.flush();

    for (int i = 0; i < files.length; i++) {
        LenNamePair lnp = null;

        while (true) {
            int c = is.read();
            if (c < 0)
                throw new IOException("Remote scp terminated unexpectedly.");

            String line = receiveLine(is);

            if (c == 'P') {
	/* Ignore modification times */

                continue;
            }

            if ((c == 1) || (c == 2))
                throw new IOException("Remote SCP error: " + line);

            if (c == 'C') {
                lnp = parseCLine(line);
                break;

            }
            throw new IOException("Remote SCP error: " + ((char) c) + line);
        }

        os.write(0x0);
        os.flush();

        File f = new File(target + File.separatorChar + lnp.filename);
        FileOutputStream fop = null;

        try {
            fop = new FileOutputStream(f);

            long remain = lnp.length;

            while (remain > 0) {
                int trans;
                if (remain > buffer.length)
                    trans = buffer.length;
                else
                    trans = (int) remain;

                int this_time_received = is.read(buffer, 0, trans);

                if (this_time_received < 0) {
                    throw new IOException("Remote scp terminated connection unexpectedly");
                }

                fop.write(buffer, 0, this_time_received);

                remain -= this_time_received;
            }

            fop.close();
        } catch (IOException e) {
            if (fop != null)
                fop.close();

            throw (e);
        }

        readResponse(is);

        os.write(0x0);
        os.flush();
    }
}
 
开发者ID:alibaba,项目名称:jstorm,代码行数:80,代码来源:MyScpClient.java

示例12: main

import ch.ethz.ssh2.Session; //导入方法依赖的package包/类
public static void main(String[] args)
{
	String hostname = "127.0.0.1";
	String username = "joe";

	File keyfile = new File("~/.ssh/id_rsa"); // or "~/.ssh/id_dsa"
	String keyfilePass = "joespass"; // will be ignored if not needed

	try
	{
		/* Create a connection instance */

		Connection conn = new Connection(hostname);

		/* Now connect */

		conn.connect();

		/* Authenticate */

		boolean isAuthenticated = conn.authenticateWithPublicKey(username, keyfile, keyfilePass);

		if (isAuthenticated == false)
			throw new IOException("Authentication failed.");

		/* Create a session */

		Session sess = conn.openSession();

		sess.execCommand("uname -a && date && uptime && who");

		InputStream stdout = new StreamGobbler(sess.getStdout());

		BufferedReader br = new BufferedReader(new InputStreamReader(stdout));

		System.out.println("Here is some information about the remote host:");

		while (true)
		{
			String line = br.readLine();
			if (line == null)
				break;
			System.out.println(line);
		}

		/* Close this session */
		
		sess.close();

		/* Close the connection */

		conn.close();

	}
	catch (IOException e)
	{
		e.printStackTrace(System.err);
		System.exit(2);
	}
}
 
开发者ID:dreajay,项目名称:jcode,代码行数:61,代码来源:PublicKeyAuthentication.java

示例13: main

import ch.ethz.ssh2.Session; //导入方法依赖的package包/类
public static void main(String[] args) throws IOException
{
	String hostname = "somehost";
	String username = "joe";
	String password = "joespass";

	File knownHosts = new File("~/.ssh/known_hosts");

	try
	{
		/* Load known_hosts file into in-memory database */

		if (knownHosts.exists())
			database.addHostkeys(knownHosts);

		/* Create a connection instance */

		Connection conn = new Connection(hostname);

		/* Now connect and use the SimpleVerifier */

		conn.connect(new SimpleVerifier(database));

		/* Authenticate */

		boolean isAuthenticated = conn.authenticateWithPassword(username, password);

		if (isAuthenticated == false)
			throw new IOException("Authentication failed.");

		/* Create a session */

		Session sess = conn.openSession();

		sess.execCommand("uname -a && date && uptime && who");

		InputStream stdout = new StreamGobbler(sess.getStdout());
		BufferedReader br = new BufferedReader(new InputStreamReader(stdout));

		System.out.println("Here is some information about the remote host:");

		while (true)
		{
			String line = br.readLine();
			if (line == null)
				break;
			System.out.println(line);
		}

		/* Close this session */

		sess.close();

		/* Close the connection */

		conn.close();

	}
	catch (IOException e)
	{
		e.printStackTrace(System.err);
		System.exit(2);
	}
}
 
开发者ID:dreajay,项目名称:jcode,代码行数:65,代码来源:UsingKnownHosts.java


注:本文中的ch.ethz.ssh2.Session.getStdout方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。