# node.js批量修改文件名
# 要求
把1.11banner-b.jpg 中的符号全换成下划线 1_11banner_b.jpg
# 代码
'use strict'; //严格模式
let fs = require('fs');
//想用API中的哪个模块就用require引进来
let src = 'banner';
//定义一个想修改文件所在的文件夹的路径,相对js文件
fs.readdir(src, function(err, files) {
files.forEach(function(filename) {
//files是该文件夹下所有文件名的数组集合
//把1.11banner-b.jpg改成1_11banner_b.jpg
if (filename.indexOf('-') != -1) {
let oldPath = src + '/' + filename;
let nameArry = filename.split('');
nameArry[1] = '_';
nameArry[filename.indexOf('-')] = '_';
let newName = nameArry.join('');
let newPath = src + '/' + newName; //给图片重新命名
fs.rename(oldPath, newPath, function(err) {
if (!err) { //替换成功,提示信息
console.log(newPath + '替换成功!');
}
})
}
})
})
# 运行
用CMD窗口进入要运行的js文件所在文件夹,运行如下代码:
node rename.js