如何编写 npm 脚本来复制目录

sta*_*ugs 2 node.js npm

我正在尝试编写 npm 脚本以将整个目录复制到另一个目录。我试过单文件工作(cp),列出目录工作(dir),但复制目录不起作用(cpdir)

npm 错误!代码 ELIFECYCLE npm ERR!错误号 1 npm 错误号!app@1.0.1 cpdir: copy --r dist distnew1 npm ERR!退出状态 1

  "scripts": {
        "ng": "ng",
        "start": "ng serve --port 4201",
        "build": "ng build",
        "test": "ng test",
        "lint": "ng lint",
        "e2e": "ng e2e",
        "cp" : "copy  test.txt  test1.txt",
        "dir" : "dir dist"
        "cpdir" : "copy  -r dist  distnew"

    },
Run Code Online (Sandbox Code Playgroud)

chr*_*con 5

在 *-nix 系统上,复制命令是cp,所以只需使用它。

"cpdir" : "cp -r ./dist  ./distnew"
Run Code Online (Sandbox Code Playgroud)


mim*_*imo 5

您还可以创建操作系统无关脚本来复制目录(或文件):

  1. npm install --save-dev copyfiles安装copyfiles包作为你的开发依赖
  2. 在您的package.json "cpdir": "npx copyfiles soruceDir destinationDir"- 使用npx您可以执行您的 npm 包二进制文件。
  3. 最后运行复制脚本: npm run cpdir

这样,您就不必担心将运行您的 npm 脚本的操作系统。