使用node打造自己的命令行工具方法教程
一、實現(xiàn)一個簡單的功能
二、環(huán)境
1.系統(tǒng): window 10
2.編輯器: vscode
3.node版本: 8.7.0
三、開始玩
1.打開命令行,新建一個pa'ckage.json
npm init
這時看到一個新的package.json生成了,使用編輯器打開
2.修改package.json,新增一個bin屬性
{ "name": "my-cli", "version": "1.0.0", "description": "", "main": "index.js", "bin": { // 增加bin屬性 "auto": "./bin/cli.js" // 左邊的crp是定義的命令行的名字,可以自己隨便取, 右邊是命令行輸入 crp 時會執(zhí)行的文件(一定要在bin文件夾下) }, "scripts": { }, "keywords": [], "author": "", "license": "ISC" }
3.新建一個cli.js在當(dāng)前的目錄下, 簡單修改
console.log('hello world')
4.然后轉(zhuǎn)到命令行, 輸入
npm link
5 查看一下效果
正確打印出hello world就是成功了
6.實現(xiàn)預(yù)覽的效果
原理就是執(zhí)行cli.js的時候,會讀取自己設(shè)定好的模板,然后在當(dāng)前的目錄下生成一個文件,
寫入模板的內(nèi)容,簡單的代碼如下
#! /usr/bin/env node const fs = require('fs') const exec = require('child_process').exec var args = process.argv.slice(2) // 可以通過process.argv這里獲得你輸入的參數(shù) //讀取內(nèi)容(在當(dāng)前的目錄下新建template文件夾和加入一個template.vue的模板) var content = fs.readFileSync('./template/template.vue') //生成內(nèi)容 fs.writeFileSync(args[0], content) // 使用vscode打開 exec('code ' + args[0])
然后放開你的腦洞, 你就能組合出許多你自己喜歡的命令來享受你的工具了
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
node.js對于數(shù)據(jù)庫MySQL基本操作實例總結(jié)【增刪改查】
這篇文章主要介紹了node.js對于數(shù)據(jù)庫MySQL基本操作,結(jié)合實例形式總結(jié)分析了node.js針對mysql數(shù)據(jù)庫基本配置、連接與增刪改查相關(guān)操作技巧,需要的朋友可以參考下2023-04-04Node.js API詳解之 querystring用法實例分析
這篇文章主要介紹了Node.js API詳解之 querystring用法,結(jié)合實例形式分析了Node.js API中querystring的基本功能、用法及相關(guān)操作注意事項,需要的朋友可以參考下2020-04-04nodejs個人博客開發(fā)第五步 分配數(shù)據(jù)
這篇文章主要為大家詳細(xì)介紹了nodejs個人博客開發(fā)的分配數(shù)據(jù),具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-04-04express結(jié)合nodejs開啟服務(wù)示例模版
這篇文章主要為大家展現(xiàn)了express結(jié)合nodejs開啟服務(wù)的代碼示例模版,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步早日升職加薪2022-04-04Node.js 實現(xiàn)搶票小工具 & 短信通知提醒功能
這篇文章主要介紹了Node.js 實現(xiàn)搶票小工具 & 短信通知提醒功能,本文通過實例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下2019-10-10