国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

Node.js命令行工具開發

tunny / 2272人閱讀

摘要:命令行工具開發使用開發命令行工具是開發者應該掌握的一項技能,適當編寫命令行工具以提高開發效率。創建命令創建一個的命令,當用戶輸入時,終端顯示。修改文件內容添加命令在目錄下新建文件執行命令解析輸入信息我們希望是由用戶輸入的,終端應該顯示為。

Node.js命令行工具開發

使用Node.js開發命令行工具是開發者應該掌握的一項技能,適當編寫命令行工具以提高開發效率。

hello world

老規矩第一個程序為hello world。在工程中新建bin目錄,在該目錄下創建名為helper的文件,具體內容如下:

#!/usr/bin/env node

console.log("hello world");

修改helper文件的權限:

$ chmod 755 ./bin/helper 

執行helper文件,終端將會顯示hello world

$ ./bin/helper
hello world
符號鏈接

接下來我們創建一個符號鏈接,在全局的node_modules目錄之中,生成一個符號鏈接,指向模塊的本地目錄,使我們可以直接使用helper命令。
在工程的package.json文件中添加bin字段:

{
  "name": "helper",
  "bin": {
    "helper": "bin/helper"
  }
}

在當前工程目錄下執行npm link命令,為當前模塊創建一個符號鏈接:

$ npm link

/node_path/bin/helper -> /node_path/lib/node_modules/myModule/bin/helper
/node_path/lib/node_modules/myModule -> /Users/ipluser/myModule

現在我們可以直接使用helper命令:

$ helper
hello world
commander模塊

為了更高效的編寫命令行工具,我們使用TJ大神的commander模塊。

$ npm install --save commander

helper文件內容修改為:

#!/usr/bin/env node

var program = require("commander");

program
  .version("1.0.0")
  .parse(process.argv);

執行helper -hhelper -V命令:

$ helper -h

 Usage: helper [options]

 Options:

  -h, --help     output usage information
  -V, --version  output the version number

$ helper -V
1.0.0

commander模塊提供-h, --help-V, --version兩個內置命令。

創建命令

創建一個helper hello 的命令,當用戶輸入helper hello ipluser時,終端顯示hello ipluser。修改helper文件內容:

#!/usr/bin/env node

var program = require("commander");

program
  .version("1.0.0")
  .usage(" [options]")
  .command("hello", "hello the author")  // 添加hello命令
  .parse(process.argv);

bin目錄下新建helper-hello文件:

#!/usr/bin/env node

console.log("hello author");

執行helper hello命令:

$ helper hello ipluser
hello author
解析輸入信息

我們希望author是由用戶輸入的,終端應該顯示為hello ipluser。修改helper-hello文件內容,解析用戶輸入信息:

#!/usr/bin/env node

var program = require("commander");

program.parse(process.argv);

const author = program.args[0];

console.log("hello", author);

再執行helper hello ipluser命令:

$ helper hello ipluser
hello ipluser

哦耶,終于達到完成了,但作為程序員,這還遠遠不夠。當用戶沒有輸入author時,我們希望終端能提醒用戶輸入信息。

提示信息

helper-hello文件中添加提示信息:

#!/usr/bin/env node

var program = require("commander");

program.usage("");

// 用戶輸入`helper hello -h`或`helper hello --helper`時,顯示命令使用例子
program.on("--help", function() {
  console.log("  Examples:");
  console.log("    $ helper hello ipluser");
  console.log();
});

program.parse(process.argv);
(program.args.length < 1) && program.help();  // 用戶沒有輸入信息時,調用`help`方法顯示幫助信息

const author = program.args[0];

console.log("hello", author);

執行helper hellohelper hello -h命令,終端將會顯示幫助信息:

$ helper hello

 Usage: helper-hello 

 Options:

  -h, --help  output usage information

 Examples:
  $ helper hello ipluser

$ helper hello -h

 Usage: helper-hello 

 Options:

  -h, --help  output usage information

 Examples:
  $ helper hello ipluser

到此我們編寫了一個helper命令行工具,并且具有helper hello 命令。
更多的使用方式可以參考TJ - commander.js文檔。

關鍵知識點

npm link

ruanyifeng

commander.js

TJ

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/87841.html

相關文章

  • 從零開始打造個人專屬命令工具集——yargs完全指南

    摘要:自阮大神的文章發布以來,有了一些改動,添加有很多有用的功能,特別是這個功能,對打造命令行工具集合非常有用,所以寫一個新版本的教程還是有必要的。 前言 使用命令行程序對程序員來說很常見,就算是前端工程師或者開發gui的,也需要使用命令行來編譯程序或者打包程序 熟練使用命令行工具能極大的提高開發效率,linux自帶的命令行工具都非常的有用,但是這些工具都是按照通用需求開發出來的,如果有一些...

    wanghui 評論0 收藏0
  • node命令工具開發【翻譯小工具

    摘要:命令行工具開發有許多命令行工具。現在我們就用來開發一個實用的命令行小工具一初探一個最簡單的命令行工具首先我們新建一目錄,然后執行生成文件新建一目錄并在目錄下創建一個執行我們可以看到終端輸出。。 node命令行工具開發 NodeJs有許多命令行工具。它們全局安裝,并提供一個命令供我們使用,完成相應的功能。 現在我們就用node來開發一個實用的命令行小工具 一.初探 一個最簡單的命令行工具...

    Yang_River 評論0 收藏0
  • Node命令工具開發【看段子小工具

    摘要:我們的小項目就初始化成功了,就可以認真思考代碼了首先分析糗事百科我們打開糗事百科會發現它的還是很簡單,由于我們只是爬取段子所以如下,就是頁數。 Node命令行工具開發【看段子】 你有沒有上班想看笑話卻又怕領導發現的經歷?現在我們就用幾十行代碼寫一個命令行看笑話段子的小程序,從此無需擔心領導的視察。這篇文章和上一篇差不多都是命令行小工具開發,不過本篇更偏向于小爬蟲的開發 總覽:命令行看段...

    kelvinlee 評論0 收藏0
  • 開發一個Node命令小玩具全過程--高顏統計工具

    摘要:相信熟悉系統的,對于一些等命令用起來應該愛不釋手,這也是我想要開發一個便捷命令行的初衷,其次就是記錄一個完整開源小玩具的全過程。 背景 命令行工具對于我們來說非常的熟悉,一些命令行的操作也極大的簡化了我們的日常工作。本文就基于我寫的一個Node命令行代碼計數器來進行展開。 相信熟悉linux系統的,對于一些ps,grep,cp,mv…等命令用起來應該愛不釋手,這也是我想要開發一個便捷命...

    ytwman 評論0 收藏0
  • Node.js 寫了個將 markdown 筆記發布到 Evernote 的命令工具

    摘要:我一直是印象筆記的用戶,但是苦于它一直不支持語法,于是就開發了一個簡單的命令行工具,可以將筆記發布到印象筆記。比如我為了實現印象筆記的列表,就寫了一個小插件。 我一直是印象筆記的用戶,但是苦于它一直不支持 markdown 語法,于是就開發了一個簡單的命令行工具 evermark,可以將 markdown 筆記發布到印象筆記。 GitHub 地址:https://github.com/...

    vibiu 評論0 收藏0

發表評論

0條評論

最新活動
閱讀需要支付1元查看
<