有趣的节点JS ssh2-sftp-client。我想列出给定路径中的所有目录及其子目录?
let sftp = new ssh2SftpClient();
console.log(sftp);
sftp.connect({
host: 'xx.xxx.xxx.xxx',
port: '22',
username: 'centos',
privateKey: require('fs').readFileSync('/home/myHome/aws_int.ppk')
}).then(() => {
return sftp.list('/home/centos/myHome');
}).then((data) => {
console.log('the data info : ' + data);
for(i = 0; i < data.length; i++) {
console.log(data);
console.log(data[i].name);
}
}).catch((err) => {
console.log('catch error : ' + err);
}).catch(() => {
console.log('catch error : ' + err);
});
https://www.npmjs.com/package/ssh2-sftp-client
上面的代码只返回给定路径中的目录,但不返回其子目录。
答案 0 :(得分:-2)
为什么使用用户名/密码? sftp应该使用ssh密钥。一旦共享密钥,您就不需要密码..您应该能够使用用户名连接。