node编写命令行工具

1.起因

最近在写博客时要插入图片,受限于网站带宽,不可能使用上兆大小的图片,所以就需要一个程序来处理高质量的jpg,png图片,所以我便编写了一个命令行工具。此处记录如何创建node的命令行工具,并且直接调用。

示例:hwebp -i ./yourdir

2.创建

2.1初始化项目

创建一个文件夹,并使用命令行工具打开(windows上)。

输入npm init -y来初始化

此时会创建以下项目

此时初始化已完成。

2.2修改package.json

点进去后发现以下内容

1
2
3
4
5
6
7
8
9
10
11
12
13
{
"name": "test",
"version": "1.0.0",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"keywords": [],
"author": "",
"license": "ISC",
"description": ""
}

我们需要在文件的第一个大括号内加入以下代码

1
2
3
4
5
6
7
{
...
"bin": {
"hwebp":"./app.js"
}
...
}

bin中存放的是你的命令的名字,hwebp就是命令名字,./app.js就是要执行的文件。
但此时我们在命令行中输入hwebp -i ./yourdir仍然不行,我们需要告诉操作系统,执行这个文件的程序是什么,在node中即为node.js。

2.3声明执行程序

打开app.js
若操作系统为windows,在app.js第一行加入#!node
若操作系统为linux,在app.js第一行加入#!/usr/bin/env node

2.4npm安装自己的命令行工具

此时保存好自己的修改,再次打开app.js所在文件夹的命令行,输入npm link就可以安装自己的工具了。

接下来,随便在哪个文件夹的命令行中就可以使用自己的命令行工具了。


node编写命令行工具
http://jiangno.com/2024/11/09/24_11_9_nodeCLI/
作者
江の
发布于
2024年11月9日
许可协议