Node.js 复制文件 EPERM:不允许操作

时间:2021-06-26 15:47:10

标签: node.js windows copy filesystems

我尝试将带有 nodejs v14.17.0 的字体复制到 %localappdata%\Microsoft\Windows\Fonts ,当尝试使用提示时我没有问题

copy /B "Haloha Free Trial.ttf" /V %localappdata%\Microsoft\Windows\Fonts\
    1 file(s) copied.

但是当尝试使用 nodejs 时,我遇到了这个问题

[Error: EPERM: operation not permitted, copyfile 'D:\dev\test\javascript\font\Haloha Free Trial.ttf' -> 'C:\Users\omen\AppData\Local\Microsoft\Windows\Fonts'] {
  errno: -4048,
  code: 'EPERM',
  syscall: 'copyfile',
  path: 'D:\\dev\\test\\javascript\\font\\Haloha Free Trial.ttf',
  dest: 'C:\\Users\\omen\\AppData\\Local\\Microsoft\\Windows\\Fonts'
}

这是我的代码

let options = process.argv.slice(2);
console.log(options[0]);

console.log(process.env.LOCALAPPDATA);
const locallAppdata = process.env.LOCALAPPDATA;

const fs = require('fs');

fs.copyFile( options[0], locallAppdata+'\\Microsoft\\Windows\\Fonts\\', (err) =>{
    if(err) throw err;
    console.log( argv[0] + " was copied ");
});

如何解决?

更新(已解决)

我将文件名添加到路径目的地

fs.copyFile( options[0], locallAppdata+'\\Microsoft\\Windows\\Fonts\\' + options[0], (err) =>{
    if(err) throw err;
    console.log( options[0] + " was copied ");
});

0 个答案:

没有答案
相关问题