如何从命令行运行Node.js程序而不使用单词'node'

时间:2015-04-07 04:09:00

标签: javascript node.js command-line npm

我正在开发Node.js包,其中包含一个命令行实用程序。现在alacon.js位于包的根目录中。要运行此实用程序,我必须在实用程序名称前使用单词node,例如:

 node alacon 'SELECT * FROM CSV("mydata.csv") ORDER BY 2'

你能帮助我吗,我应该把包里的内容改成:

1.要在没有node字的情况下运行此实用程序,例如:

 alacon 'SELECT * FROM CSV("mydata.csv") ORDER BY 2'

2.要全局安装此软件包并在计算机上的任何位置使用该实用程序:

 npm install -g alasql
 alacon 'SELECT 2*2'

换句话说,如何使用命令行程序创建类似Jison,Gulp和其他Node.js类似软件包的实用程序。

我已将#!/usr/bin/env node行添加到文件顶部,但遗憾的是没有预期效果。

谢谢!

1 个答案:

答案 0 :(得分:1)

您需要使脚本可执行chmod a+x alacon

然后你应该可以运行./alacon 'SELECT * FROM CSV("mydata.csv") ORDER BY 2'

如果您希望在没有./的情况下调用脚本,则需要将其移动(或符号链接)到/ usr / bin。

或者 - 您可以创建别名:alias alacon="node alacon"