使用JS脚本批量去除文件名中部分关键字

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40

var fs = require('fs');

var KEY_WORD = '要去掉的关键字';
var PATH = '/home/指定目录/';

//遍历目录得到文件信息
function run(path, callback) {
var files = fs.readdirSync(path);

files.forEach(function(file){
f = path + '/' + file;
if (fs.statSync(f).isFile()) {
callback(path, file);
} else {
//目录递归处理
run(f, callRename);
}
});
}

// 修改文件名称
function rename(oldPath, newPath) {
fs.rename(oldPath, newPath, function(err) {
if (err) {
throw err;
}
});
}

function callRename(path, fileName) {
let oldPath = path + '/' + fileName; // 源文件路径
let newPath = path + '/' + fileName.replace(KEY_WORD, ''); // 新文件全路径
console.log(newPath);
rename(oldPath, newPath);
}

// 运行入口
run(PATH, callRename);