使用node打造本身的命令行

1、實現一個簡單的功能

圖片描述

2、環境

1.系統: window 10
2.編輯器: vscode
3.node版本: 8.7.0vue

3、開始玩

1.打開命令行,新建一個pa'ckage.jsonnode

npm init
這時看到一個新的package.json生成了,使用編輯器打開

2.修改package.json,新增一個bin屬性npm

{
      "name": "my-cli",
      "version": "1.0.0",
      "description": "",
      "main": "index.js",
      "bin": { // 增長bin屬性
          "auto": "./bin/cli.js" 
          // 左邊的crp是定義的命令行的名字,能夠本身隨便取, 右邊是命令行輸入 crp 時會執行的文件(必定要在bin文件夾下)
      },
      "scripts": {
        
      },
      "keywords": [],
      "author": "",
      "license": "ISC"
    }

3.新建一個cli.js在當前的目錄下, 簡單修改json

console.log('hello world')

4.而後轉到命令行, 輸入編輯器

npm link

5 查看一下效果
圖片描述
正確打印出hello world就是成功了
6.實現預覽的效果工具

原理就是執行cli.js的時候,會讀取本身設定好的模板,而後在當前的目錄下生成一個文件,
寫入模板的內容,簡單的代碼以下
#! /usr/bin/env node
    const fs = require('fs')
    const exec = require('child_process').exec
    var args = process.argv.slice(2) // 能夠經過process.argv這裏得到你輸入的參數
    //讀取內容(在當前的目錄下新建template文件夾和加入一個template.vue的模板)
    var content = fs.readFileSync('./template/template.vue')
    //生成內容
    fs.writeFileSync(args[0], content)
    // 使用vscode打開
    exec('code ' + args[0])
而後放開你的腦洞, 你就能組合出許多你本身喜歡的命令來享受你的工具了
相關文章
相關標籤/搜索