0
Я придумал ошибку для этого сценария узла, который я написал, чтобы переименовать кучу файлов.EPERM fs.rename
> node test/rename.js
fs.js:809
return binding.rename(pathModule._makeLong(oldPath),
^
Error: EPERM: operation not permitted, rename '/path/to/file v2 032.png' -> '/path/to/file 032.png'
at Error (native)
at Object.fs.renameSync (fs.js:809:18)
at Object.<anonymous> (/Users/[user]/Documents/test/rename.js:9:8)
at Module._compile (module.js:541:32)
at Object.Module._extensions..js (module.js:550:10)
at Module.load (module.js:458:32)
at tryModuleLoad (module.js:417:12)
at Function.Module._load (module.js:409:3)
at Module.runMain (module.js:575:10)
at run (bootstrap_node.js:352:7)
Это код, с которым я работаю.
var fs = require('fs');
var path = require('path');
var folder = '/path/to/'
var regExp = /\sv2/gi;
var directory = fs.readdirSync(folder);
for (i=0; i < directory.length; i++) {
if (directory[i].match(regExp)) {
fs.renameSync(path.join(folder, directory[i]), path.join(folder, directory[i].replace(regExp, '')))
};
}
Я попробовал это, как и node test/rename.js
и sudo node test/rename.js
с обоими откинув ошибки. Я не вижу, где я собрался.
Можете ли вы вручную переименовать из командной строки? – Amit
Я просто попробовал файл 'mv v2.png file.png', и он не удался. Это проблема chmod? –
вы отредактировали ошибку?/path/to/file? – owaishanif786