当前位置:Gxlcms > JavaScript > node做出个性命令行工具

node做出个性命令行工具

时间:2021-07-01 10:21:17 帮助过:39人阅读

这次给大家带来node做出个性命令行工具,node做出个性命令行工具的注意事项有哪些,下面就是实战案例,一起来看一下。

一、实现一个简单的功能

二、环境

1.系统: window 10
2.编辑器: vscode
3.node版本: 8.7.0

三、开始玩

1.打开命令行,新建一个pa'ckage.json

  1. npm init

这时看到一个新的package.json生成了,使用编辑器打开

2.修改package.json,新增一个bin属性

  1. {
  2. "name": "my-cli",
  3. "version": "1.0.0",
  4. "description": "",
  5. "main": "index.js",
  6. "bin": { // 增加bin属性
  7. "auto": "./bin/cli.js"
  8. // 左边的crp是定义的命令行的名字,可以自己随便取, 右边是命令行输入 crp 时会执行的文件(一定要在bin文件夹下)
  9. },
  10. "scripts": {
  11. },
  12. "keywords": [],
  13. "author": "",
  14. "license": "ISC"
  15. }

3.新建一个cli.js在当前的目录下, 简单修改

  1. console.log('hello world')

4.然后转到命令行, 输入

  1. npm link

5 查看一下效果

正确打印出hello world就是成功了

6.实现预览的效果

原理就是执行cli.js的时候,会读取自己设定好的模板,然后在当前的目录下生成一个文件,

写入模板的内容,简单的代码如下

  1. #! /usr/bin/env node
  2. const fs = require('fs')
  3. const exec = require('child_process').exec
  4. var args = process.argv.slice(2) // 可以通过process.argv这里获得你输入的参数
  5. //读取内容(在当前的目录下新建template文件夹和加入一个template.vue的模板)
  6. var content = fs.readFileSync('./template/template.vue')
  7. //生成内容
  8. fs.writeFileSync(args[0], content)
  9. // 使用vscode打开
  10. exec('code ' + args[0])

相信看了本文案例你已经掌握了方法,更多精彩请关注Gxl网其它相关文章!

推荐阅读:

CSS层叠机制使用详解

H5触摸事件中如何判断用户滑动方向

以上就是node做出个性命令行工具的详细内容,更多请关注Gxl网其它相关文章!

人气教程排行