/*
* @Date: 2021-03-02 10:40:49
* @Description: ssh文件上传
* @FilePath: /put/put.js
*/
'use strict'
const Client = require('ssh2-sftp-client')
const config = {
path: {
// 远程地址
romotePath: '/data/app/vue/dist',
// 本地路径
localpath: './dist'
},
romote: {
// 服务器ip
host: 'x.x.x.x',
// 端口默认22
port: '22',
// 用户名
username: 'root',
// 密码
password: 'xxxxxx'
},
}
/*
* 主方法
* localPath 本地路径
* romotePath 远程路径
*/
function main (localPath, romotePath) {
const sftp = new Client()
sftp.connect(config.romote).then(() => {
console.log('-----链接成功------')
return sftp.uploadDir(localPath, romotePath)
}).then((data) => {
console.log(data)
console.log('-----上传完成,及时清除缓存------')
}).catch(err => {
console.log(err)
console.log('-----TMD失败了,出事了,快看看怎么回事-----')
}).finally(() => {
// 断开链接
sftp.end()
})
}
main(config.path.localpath, config.path.romotePath)