2013-03-23 100 views
1

我是這個東西的新手。我想創建一個命令行界面,爲我的應用程序,我可以指定自定義命令的類似:Node.js:自定義命令行界面

myapp new /root/myapp 
myapp start /server.js 
myapp stop /server.js 

這樣我就可以用我的應用程序,就像我做的,如MySQL真正的服務進行交互。是否有可能在node.js中編寫這樣的服務?

我在尋找類似於forevermeteor的東西。

感謝您的幫助!

+1

是的,這是可能的。你有什麼麻煩? ([this](http://nodejs.org/api/process.html)可能有幫助)。另外,爲什麼不只是閱讀他們的代碼? ([永遠](https://github.com/nodejitsu/forever/blob/master/lib/forever/cli.js)) – tjameson 2013-03-23 01:09:22

+0

感謝@tjameson我正在閱讀他們的源代碼,他們使用熨斗作爲cli工具,但是我仍然沒有看到他們實際上沒有調用'node'。我的意思是你可以像永遠開始一樣永遠使用它,但是當我讀到flatiron文檔時,在每個例子中它就像'node myapp.js -options',所以我不太明白。 – Adam 2013-03-23 01:34:40

+1

注意[頂部]的'#!'(https://github.com/nodejitsu/forever/blob/master/bin/forever)?當你用'chmod + x'文件的時候,解釋器會檢查這個。這是說它是一個「節點」文件,所以它執行它與節點。 – tjameson 2013-03-23 01:40:30

回答

0

您需要的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" } 
} 

http://howtonode.org/how-to-module