摘要:這篇文章主要介紹了使用打造自己的命令行工具方法教程,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧一實現一個簡單的功能二環境系統編輯器版本三開始玩打開命令行新建一個這時看到一個新的生成了使用編輯器打開修改新增一個
這篇文章主要介紹了使用node打造自己的命令行工具方法教程,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
一、實現一個簡單的功能
image
二、環境
1.系統: 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 時會執行的文件(一定要在bin文件夾下)` `},` `"scripts"``: {` `},` `"keywords"``: [],` `"author"``:` `""``,` `"license"``:` `"ISC"` `}`
3.新建一個cli.js在當前的目錄下, 簡單修改
console.log("hello world")
4.然后轉到命令行, 輸入
npm link
5 查看一下效果
image
正確打印出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])`
然后放開你的腦洞, 你就能組合出許多你自己喜歡的命令來享受你的工具了
以上就是本文的全部內容,希望對大家的學習有所幫助.
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/27545.html
摘要:這篇文章主要介紹了使用打造自己的命令行工具方法教程,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧一實現一個簡單的功能二環境系統編輯器版本三開始玩打開命令行新建一個這時看到一個新的生成了使用編輯器打開修改新增一個 這篇文章主要介紹了使用node打造自己的命令行工具方法教程,小編覺得挺不錯的,現在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧 一、實現一...
摘要:自阮大神的文章發布以來,有了一些改動,添加有很多有用的功能,特別是這個功能,對打造命令行工具集合非常有用,所以寫一個新版本的教程還是有必要的。 前言 使用命令行程序對程序員來說很常見,就算是前端工程師或者開發gui的,也需要使用命令行來編譯程序或者打包程序 熟練使用命令行工具能極大的提高開發效率,linux自帶的命令行工具都非常的有用,但是這些工具都是按照通用需求開發出來的,如果有一些...
摘要:第一節課程概述本課程面向初學者,內容涵蓋以太坊開發相關的基本概念,并將手把手地教大家如何構建一個基于以太坊的完整去中心化應用區塊鏈投票系統。第七節以太坊世界計算機以太坊是一種區塊鏈的實現。交易數據以太坊中每筆交易都存儲在區塊鏈上。 第一節 課程概述 本課程面向初學者,內容涵蓋以太坊開發相關的基本概念,并將手把手地教大家如何構建一個 基于以太坊的完整去中心化應用 —— 區塊鏈投票系統。 ...
摘要:第一節課程概述本課程面向初學者,內容涵蓋以太坊開發相關的基本概念,并將手把手地教大家如何構建一個基于以太坊的完整去中心化應用區塊鏈投票系統。第七節以太坊世界計算機以太坊是一種區塊鏈的實現。交易數據以太坊中每筆交易都存儲在區塊鏈上。 第一節 課程概述 本課程面向初學者,內容涵蓋以太坊開發相關的基本概念,并將手把手地教大家如何構建一個 基于以太坊的完整去中心化應用 —— 區塊鏈投票系統。 ...
閱讀 3036·2021-11-02 14:40
閱讀 849·2019-08-30 15:53
閱讀 1267·2019-08-30 15:53
閱讀 3264·2019-08-30 13:53
閱讀 3308·2019-08-29 12:50
閱讀 1138·2019-08-26 13:49
閱讀 1869·2019-08-26 12:20
閱讀 3666·2019-08-26 11:33