如何从命令行运行Node.js程序,而无需单词'node'
问题描述:
我正在开发Node.js包,其中包含一个命令行实用程序。现在alacon.js位于包的根目录下。要运行这个工具我有实用程序的名称前使用单词node
,如:如何从命令行运行Node.js程序,而无需单词'node'
node alacon 'SELECT * FROM CSV("mydata.csv") ORDER BY 2'
你能帮助我,我应该在包装更改为:
1.To运行该工具,而不node
字,如:
alacon 'SELECT * FROM CSV("mydata.csv") ORDER BY 2'
2.To全球安装该软件包,而无处不在使用该工具的计算机上:
npm install -g alasql
alacon 'SELECT 2*2'
换句话说,如何使用命令行程序创建像Jison,Gulp和其他Node.js类似包的实用程序。
我已经将#!/usr/bin/env node
行添加到文件的顶部,但不幸的是没有预期的效果。
谢谢!
答
您将需要使脚本可执行chmod a+x alacon
。
然后如果你想调用脚本,而不./
,那么你将需要移动它(或符号链接的话)到/ usr/bin中,你应该能够运行./alacon 'SELECT * FROM CSV("mydata.csv") ORDER BY 2'
。
另外 - 你可以创建一个别名:alias alacon="node alacon"
谢谢!你知道吗,如何改变全球安装的软件包? – agershun