前言
由于系统提供的命令基本上都是很基础的命令或者说系统脚本开发比较复杂入门门槛比较高不容易操作,那么我们现在可以使用js打造一款专属我们自己的命令工具可以在命令行窗口运行我们的程序而且还是跨平台的免去了 同时需要学习dos 和shell
那么一起来学习一下怎么使用nodejs开发我们的一个命令行工具吧
需求
对网上下载下图片进行 1到n的命名
image.png
环境配置
- 初始化项目
npm init
# 输入项目信息一直回车
package name: (新建文件夹) node-tools
version: (1.0.0)
description:
entry point: (index.js)
test command:
git repository:
keywords:
author:
license: (ISC)
- 修改 package.json
添加 bin 属性配置
{
"name": "node-tools",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"bin": {
"rname": "./rname/index.js"
},
"author": "",
"license": "ISC"
}
- 新建js文件
在js文件第一行声明运行环境
#!/usr/bin/env node
console.log("hello rname")
- 安装到全局命令
npm i -g
- 运行cmd测试
功能开发
需要安装对应的依赖
#!/usr/bin/env node
const rd = require('rd');
const fs = require('fs');
const process = require('process');
const path = require('path');
let cwd = process.cwd();
let i = 1000000;
rd.eachFileSync(cwd, (filename, stats) => {
if (stats.isFile()) {
i++;
console.log(`${filename} ==>${i + path.extname(filename)}`)
fs.renameSync(filename, i + path.extname(filename));
}
});
发布命令
npm i -g
运行命令
C:\Users\WangYa\Pictures\test>rname
执行结果
我们可以看到我们的文件名已经按照我们的定义的格式已经命名好了, 10 行左右的 js 轻松治好我的强迫症
image.png
网友评论