安装
API
rmdir(romotePath, true)
递归删除服务器文件夹uploadDir(localPath, romotePath)
递归上传文件夹put(localPath, romotePath)
get(romotePath, localPath)
demo
const Client = require('ssh2-sftp-client')
// const path = require('path')
const config = {
path: {
// 远程地址
romotePath,
// 本地地址
localPath,
},
romote: {
// 服务器 ip 地址
host,
// 端口号,默认是 22
port,
// 登录的用户名
username,
// 登录密码
password,
}
}
/* 主方法
* @method main
* @param{String} localPath 本地路径,不用 path 模块,直接字符串就好了,这个包自己有格式化的
* @param{String} romotePath 远程路径
* @return{undefined} 返回个*
*/
function main(localPath, romotePath) {
// 实例化
const sftp = new Client()
sftp
.connect(config.romote)
.then(() => {
console.log('----------------------------- 连接成功,上传中... -----------------------------')
return sftp.uploadDir(localPath, romotePath)
})
.then(data => {
console.log('----------------------------- 上传完成,及时清除缓存 ----------------------------')
})
.catch(err => {
console.log('----------------------------- 出错了!! -----------------------------')
console.log(err)
})
.finally(() => {
// 断开连接
sftp.end()
})
}
main(
config.path.localPath,
config.path.romotePath,
)