walkthrough,walker,walkdir
大批量修改文件这种活还是交给脚本来处理吧
#!/usr/bin/env node
var fs = require('fs')
var path = require('path')
function fatal(message) {
console.error(message)
process.exit(1)
}
function processFile(inputFile) {
fs.readFile(inputFile, {
encoding: 'utf8'
}, function(err, data) {
if (err) return fatal('Cannot read ' + inputFile + '\n' + err.message)
var txt = modifyContent(data)
fs.writeFile(inputFile, txt, {
encoding: 'utf8'
}, function(err) {
if (err) return fatal('Cannot write ' + inputFile + '\n' + err.message)
else console.log('ok ' + inputFile)
})
})
}
function processDirectory(inputDir, fileExt) {
fs.readdir(inputDir, function(err, files) {
if (err) return fatal('Cannot read directory ' + inputDir + '\n' + err.message)
files.forEach(function(file) {
var inputFile = path.join(inputDir, file)
fs.stat(inputFile, function(err, stat) {
if (err) return fatal('Cannot read ' + inputFile + '\n' + err.message)
if (stat.isDirectory()) {
processDirectory(inputFile, fileExt)
} else if (!fileExt || path.extname(file) === '.' + fileExt) {
processFile(inputFile)
}
})
})
})
}
// function modifyContent (str) {
// return str.split(' ').join(' ').replace('