aboutsummaryrefslogtreecommitdiff
path: root/node_modules/shelljs/bin/shjs
diff options
context:
space:
mode:
Diffstat (limited to 'node_modules/shelljs/bin/shjs')
-rwxr-xr-xnode_modules/shelljs/bin/shjs39
1 files changed, 39 insertions, 0 deletions
diff --git a/node_modules/shelljs/bin/shjs b/node_modules/shelljs/bin/shjs
new file mode 100755
index 000000000..75ca58b9d
--- /dev/null
+++ b/node_modules/shelljs/bin/shjs
@@ -0,0 +1,39 @@
+#!/usr/bin/env node
+require('../global');
+
+if (process.argv.length < 3) {
+ console.log('ShellJS: missing argument (script name)');
+ console.log();
+ process.exit(1);
+}
+
+var args,
+ scriptName = process.argv[2];
+env['NODE_PATH'] = __dirname + '/../..';
+
+if (!scriptName.match(/\.js/) && !scriptName.match(/\.coffee/)) {
+ if (test('-f', scriptName + '.js'))
+ scriptName += '.js';
+ if (test('-f', scriptName + '.coffee'))
+ scriptName += '.coffee';
+}
+
+if (!test('-f', scriptName)) {
+ console.log('ShellJS: script not found ('+scriptName+')');
+ console.log();
+ process.exit(1);
+}
+
+args = process.argv.slice(3);
+
+for (var i = 0, l = args.length; i < l; i++) {
+ if (args[i][0] !== "-"){
+ args[i] = '"' + args[i] + '"'; // fixes arguments with multiple words
+ }
+}
+
+var path = require('path');
+var extensions = require('interpret').extensions;
+var rechoir = require('rechoir');
+rechoir.prepare(extensions, scriptName);
+require(require.resolve(path.resolve(process.cwd(), scriptName)));