Home > Web Front-end > JS Tutorial > node custom command line tool

node custom command line tool

php中世界最好的语言
Release: 2018-05-08 14:47:22
Original
1915 people have browsed it

This time I will bring you the node custom command line tool. What are the precautions for the node custom command line tool? The following is a practical case, let’s take a look.

1. Implement a simple function

##2. Environment

1. System: window 10

2.
Editor: vscode3.node version: 8.7.0

3. Start playing

1. Open the command line and create a new pa'ckage.json

npm init
Copy after login
At this time, you will see a new package. json is generated, use the editor to open

2. Modify package.json, add a bin

attribute

  {
   "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"
  }
Copy after login
3. Create a new cli.js in the current directory Next, simply modify

console.log('hello world')
Copy after login
4. Then go to the command line and enter

npm link
Copy after login
5 to check the effect

prints hello correctly world is successful

6. To achieve the effect of preview

The principle is that when cli.js is executed, the template set by itself will be read, and then a file will be generated in the current directory ,

Write the content of the template, the simple code is as follows

  #! /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])
Copy after login
Then let go of your imagination, you can combine many of your favorite commands to enjoy your tool

I believe you have mastered the method after reading the case in this article. For more exciting information, please pay attention to other related articles on the php Chinese website!

Recommended reading:

Uses and differences between apply and Math.max()

What are the ways to implement letters in Angular Case conversion

The above is the detailed content of node custom command line tool. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template