Javascript Node.js:自定义命令行界面

Javascript Node.js:自定义命令行界面,javascript,node.js,service,command,command-line-interface,Javascript,Node.js,Service,Command,Command Line Interface,我在这方面是个新手。我想为我的应用程序创建一个命令行界面,在这里我可以指定如下自定义命令: myapp new /root/myapp myapp start /server.js myapp stop /server.js 因此,我可以与我的应用程序交互,就像我与mysql这样的真正服务交互一样。可以在node.js中编写类似服务的东西吗 我所寻找的是与他们相似的或与他们合作的东西 谢谢你的帮助 您需要在package.json中指定myapp,如下所示: { "name": "myapp"

我在这方面是个新手。我想为我的应用程序创建一个命令行界面,在这里我可以指定如下自定义命令:

myapp new /root/myapp
myapp start /server.js
myapp stop /server.js
因此,我可以与我的应用程序交互,就像我与mysql这样的真正服务交互一样。可以在node.js中编写类似服务的东西吗

我所寻找的是与他们相似的或与他们合作的东西


谢谢你的帮助

您需要在package.json中指定myapp,如下所示:

{ "name": "myapp"
, "version": "0.0.1"
, "engines": [ "node >=0.4.0" ]
, "description": "myapp command line util."
, "author": "..."
, "contributors": []
, "keywords" : [ "myapp", "command", "shell" ]
, "repository":
  { "type" : "git"
  , "url" : "https://...."
  }
, "bin" : { "myapp" : "./bin/myapp.js" }
}

您可以使用npm中的commander模块构建自己的CLI。只需输入:

npm install commander 
这将安装commander模块


对于示例和文档,您可以浏览以下内容:

是的,这是可能的。你有什么问题?(可能有帮助)。还有,为什么不直接阅读他们的代码呢?()谢谢@tjameson我正在阅读他们的源代码,他们使用flatiron作为cli工具,但是我仍然不知道他们在不调用
节点的情况下是如何做到这一点的。我的意思是你可以像这样永远使用
永远开始
,但是当我阅读flatiron文档时,在每个示例中它都像
节点myapp.js-options
,所以我不太明白。注意
#在?当你
chmod+x
你的文件时,解释器会检查这个。这意味着它是一个
节点
文件,因此它使用节点执行它。