X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=cli%2Fsurfer.js;h=bd574f54b6f5e2d41023212066a7bfc501bce864;hb=511ce661de41d42ab427ab1e2f43cc9f2c84b6c7;hp=7c5ac8aef57d2a528782ea978e28c916ab09edbf;hpb=6745c64afc8531c6a6eca4e0a81b39fc2653aa24;p=perso%2FImmae%2FProjets%2FNodejs%2FSurfer.git diff --git a/cli/surfer.js b/cli/surfer.js index 7c5ac8a..bd574f5 100755 --- a/cli/surfer.js +++ b/cli/surfer.js @@ -5,18 +5,39 @@ var program = require('commander'), actions = require('./actions'); -program.version('0.1.0'); +program.version(require('../package.json').version); + +// Those override the login settings if provided +program.option('-s, --server ', 'Server URL (optional)'); +program.option('-t, --token ', 'Server Access Token (optional)'); program.command('login ') .description('Login to server') + .option('--username [username]', 'Username (optional)') + .option('--password [password]', 'Password (optional)') .action(actions.login); -program.command('put [files...]') - .option('-a --all', 'Also include hidden files and folders.', false) - .description('Put a file, last argument is destination if provided') - .action(actions.put); +program.command('logout') + .description('Logout from server') + .action(actions.logout); -program.command('get [file]') +program.command('put ') + .option('-a --all', 'Also include hidden files and folders.', false) + .description('Puts a list of files or dirs to the destination. The last argument is destination dir') + .action(actions.put) + .on('--help', function() { + console.log(); + console.log(' Examples:'); + console.log(); + console.log(' $ surfer put file.txt / # puts to /file.txt'); + console.log(' $ surfer put file.txt /data # puts to /data/file.txt'); + console.log(' $ surfer put dir /data # puts dir/* as /data/dir/*'); + console.log(' $ surfer put dir/. / # puts dir/* as /app/data/*'); + console.log(' $ surfer put dir1 dir2 file1 / # puts as /dir1/* /dir2/* and /file'); + console.log(); + }); + +program.command('get [file|dir]') .description('Get a file or directory listing') .action(actions.get); @@ -31,9 +52,9 @@ program.parse(process.argv); if (!process.argv.slice(2).length) { program.outputHelp(); } else { // https://github.com/tj/commander.js/issues/338 - var knownCommand = program.commands.some(function (command) { return command._name === process.argv[2]; }); - if (!knownCommand) { - console.error('Unknown command: ' + process.argv[2]); - process.exit(1); - } + // var knownCommand = program.commands.some(function (command) { return command._name === process.argv[2]; }); + // if (!knownCommand) { + // console.error('Unknown command: ' + process.argv[2]); + // process.exit(1); + // } }