说明:需要只获得第一级文件夹目录
package com.sunsheen.jfids.studio.monitor.utils;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.io.PrintWriter;
import java.util.ArrayList;
import java.util.List;
import org.eclipse.core.runtime.Assert;
import ch.ethz.ssh2.ChannelCondition;
import ch.ethz.ssh2.Connection;
import ch.ethz.ssh2.StreamGobbler;
/**
* 遍历出远程服务器上指定目录下的所有文件夹
*
* @author WangSong
*
*/
public class GetAllSubfolders {
private GetAllSubfolders(){}
/**
* 得到服务器上指定文件夹下所有子文件夹(第一级子文件夹)
* @return
*/
public static List getSubfolderName(String romoteAddr,String username,
String password,String targetFolder) {
List folderNameList = new ArrayList();
try {
Connection connection = new Connection(romoteAddr);// 创建一个连接实例
connection.connect();// Now connect
boolean isAuthenticated = connection.authenticateWithPassword(username, password);//認證
Assert.isTrue(isAuthenticated, "用戶名或密碼錯誤!");
ch.ethz.ssh2.Session sess = connection.openSession();// 創建一個會話
sess.requestPTY("bash");
sess.startShell();
InputStream stdout = new StreamGobbler(sess.getStdout());
InputStream stderr = new StreamGobbler(sess.getStderr());
BufferedReader stdoutReader = new BufferedReader(new InputStreamReader(stdout));