Socket
Socket
Sign inDemoInstall

sftp-client-promise

Package Overview
Dependencies
6
Maintainers
1
Versions
5
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    sftp-client-promise

a SFTP client for node.js


Version published
Weekly downloads
13
increased by44.44%
Maintainers
1
Install size
1.07 MB
Created
Weekly downloads
 

Readme

Source

SSH2 SFTP Client

a SFTP client for node.js, a wrapper for ssh2

Installation

npm install sftp-client-promise

Usage

let Client = require('sftp-client-promise');
let conn = new Client();
conn.connect({
    host: '127.0.0.1',
    port: '8080',
    username: 'username',
    password: '******'
}).then(() => {
    return conn.sftp('readdir', {path: '/pathname'});
}).then((data) => {
    console.log(data, 'the data info');
}).catch((err) => {
    console.log(err, 'catch error');
    conn.end();
});

Documentation

the connection to server config pls see ssh2 client event.

list of methods: all the methods will return a Promise;

readdir

read a directory

conn.sftp('readdir', {path: remoteFilePath})

directory info:

type: // file type(-, d, l)
name: // file name
size: // file size
modifyTime: // file timestamp of modified time
accessTime: // file timestamp of access time
rights: {
    user:
    group:
    other:
},
owner: // user ID
group: // group ID

exists

return true if the path(file or directory) exists, false otherwise.

conn.sftp('exists', {path: remotePath})
createReadStream

download file from remote server

conn.sftp('createReadStream',  {
  path: remoteFilePath, 
  stream: localWriteStream, 
  option: option
})

for example:

conn.sftp('createReadStream', { 
  path: '/home/temp.gz', 
  stream: fs.createWriteStream('./local/temp.gz')
})
createWriteStream

upload file from local, data(stream | buffer | string)

conn.sftp('createWriteStream',  {
  path: remoteFilePath, 
  data: stream | buffer | string, 
  option: option
})

for example:

conn.sftp('createWriteStream', { 
  path: '/home/temp.gz', 
  data: fs.createReadStream('./local/temp.gz')
  //data: fs.readFileSync('./local/temp.gz')
  //data: 'some local data'
})
fastGet

download file from remote server

conn.sftp('fastGet', {remotePath: remotePath, localPath: localPath})
fastPut

upload local file to remote serer

conn.sftp('fastPut', {localPath: localPath, remotePath: remotePath})
readFile

download remote server file

conn.sftp('readFile', {path: remoteFilePath, option: option})
writeFile

upload file to remote server

conn.sftp('writeFile', {path: remoteFilePath, data: localFilePath, option: option})
appendFile

append local data to remote server file

conn.sftp('appendFile', {path: remoteFilePath, data: localData, option: option})
mkdir

create new directory recursively.

conn.sftp('mkdir', {path: remoteFilePath});
rmdir

remove the directory recursively.

conn.sftp('rmdir', {path: localPath});

delete file.

conn.sftp('delete', {path: remoteFilePath});
rename

rename remoteSourcePath to remoteDestPath (removes remoteSourcePath).

conn.sftp('rename', {oldPath: remoteSourcePath, newPath: remoteDestPath});
chmod

modify rights to remoteDestPath file

conn.sftp('chmod', {path: remoteDestPath,  mode: mode});

####connect

connection config you will see here

end

close the sftp connection. when you need it, you can call it in then() or catch().

conn.end();

Keywords

FAQs

Last updated on 10 May 2018

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc