0
Я новичок в протоколе SFTP. Мне нужно перечислить все файлы и папки с сервера, используя протокол SFTP. Я реализовал это с использованием библиотеки JSch:Как я могу перечислить все файлы с SFTP-сервера с помощью Java?
public ArrayList<JSONObject> listFiles(String deviceName, String location) throws Exception
{
this.sftpLogin();
Vector fileListVector;
if (Strings.isNullOrEmpty(location))
{
fileListVector = channelSftp.ls("/");
} else
{
fileListVector = channelSftp.ls("/"+location);
}
ArrayList<JSONObject> fileList = new ArrayList<>();
for (Object aFileListVector : fileListVector)
{
ChannelSftp.LsEntry entry = (ChannelSftp.LsEntry) aFileListVector;
if (entry.getFilename().equalsIgnoreCase(".") || entry.getFilename().equalsIgnoreCase(".."))
{
continue;
}
SftpATTRS attrs = entry.getAttrs();
fileList.add(ImportProtocolUtils.getFileJSONObject(attrs.isDir(), location, entry.getFilename()));
}
return fileList;
}
Я пробовал канал 'shell' и 'exec', используя этот протокол. Но команда 'ls' не работает.
Какая из лучших библиотек для этого в Java?
Заранее спасибо.