2.0.0 • Published 6 years ago

snack-cli v2.0.0

Weekly downloads
11
License
Apache-2.0
Repository
github
Last release
6 years ago

Build Status Code Coverage NPM Repo License

SNACK-CLI is command-line interfaces for node.js

Install by npm

npm install snack-cli

Example

var cli = require('snack-cli');

var argv = cli
    .name('sftp')
    .version('1.0.0-beta')
    .usage('[options] local remote')
    .description('An sftp application written by node.js')
    .option('    --host <host>', 'remote ssh hostname/ip')
    .option('    --port <port>', 'remote ssh port', '22', cli.transformers.asInt)
    .option('-u, --username <user>', 'username for authentication', 'root')
    .option('-p, --password <pass>', 'password for authentication')
    .option('    --auto-mkdirs', 'mkdirs when dir not found')
    .allowArgumentCount(2)
     //.allowUnknownOption()
     //.allowMissingRequiredOption()
    .parse();

console.log(argv);

When you execute following cli:

sftp --host 192.168.0.254 -p 111111 --auto-mkdirs ./1.txt /tmp/1.txt

You will get:

{
    'host': '192.168.0.254',
    'port': 22,
    'username': 'root',
    'password': '111111',
    'autoMkdirs': true,
    'args': [
        './1.txt',
        '/tmp/1.txt'
    ]
}

Output help

When you execute following cli:

sftp --help

You will get:

Usage: sftp [options] local remote

An sftp application written by node.js

Options:
      --host <host>       remote ssh hostname/ip
      --port <port>       remote ssh port (default: 22)
  -u, --username <user>   username for authentication (default: root)
  -p, --password <pass>   password for authentication
      --auto-mkdirs       mkdirs when dir not found
      --version           display version information and exit
      --help              display this help and exit

License

Released under the Apache 2 License.