使用节点 fs 将文件移动到只读文件夹

Moving files to read-only folder with node fs

我在使用 node.js fs 工具将文件从一个目录移动到另一个目录时遇到问题。我可以阅读它们,但不会写。我怀疑问题出在只读 属性 中,这会导致

EPERM operation is not permitted 'C:\Andersen\Images\small'

错误提到目录,我试图在其中写入所有这些文件。

    var filesystem = require("fs"); 

    files.forEach(function (file) {
       filesystem.renameSync(".\Test", ".\Images\small");          
    });

我尝试使用 Windows cmd

更改文件夹的只读 属性

attrib -r +s "C:\Andersen\Images"

但是没用。如果重要的话,我有 Windows 7 Pro。 Windows GNU 也不起作用。 "Attribute changer" 程序确实更改了 属性,但错误仍然出现。 Total Commander 更改无效。 我能用这个做什么?有没有办法用fs将文件写入只读文件夹或建议任何其他模式?

非常感谢您的回答!

最后发现是fs.renameSync()函数出了问题。这就是为什么我使用 fs-extra 和它的 copy() 函数。

var filesystem = require("fs-extra");    

filesystem.copy(file,".\Images\big\" + stat.size + ".jpg", function (err, data) {
    if (err) throw err;
});