将mac节点脚本转换为windows

问题描述:

我有一个postinstall节点脚本,它将先前运行的脚本复制到我的npm-scripts文件夹中。但是,这只适用于Mac。我需要为Windows工作,所以我正在创建一个新的文件,该文件将为Windows运行1或为Mac下面列出的文件。将mac节点脚本转换为windows

`cp ../node_modules/some-components/npm-scripts/*.js ../npm_scripts` 

我没有看到一个清晰的方法来转换语法,以便可以通过Windows机器以及是否使用复制或robocopy。任何建议将不胜感激。

+0

建议:创建一个用于复制文件的JavaScript例如通过'fs'。这显然是平*立的。 – qqilihq

+0

我这样做,但我不清楚Windows的语法,这就是为什么我显示需要从Mac转换的东西。基本格式是这样的。 'const exec = require('./exec'); const platformCheck =()=> { if(process.platform ==='win32'){ exec('windows thing here'); } exec('mac thing here) }' – dch

创建一个copy.js文件,该文件通过Node.js API独立执行复制平台(即,不依赖Windows或Unix特定的shell命令cpcopy)。我的建议是:使用fs-extra,它也处理复制目录,与包含的fs不同。

var fs = require('fs-extra'); // add to your dependencies via 'npm install fs-extra --save' 
var path = require('path'); 

fs.copySync(
     path.resolve(__dirname, '../path/to/source', 
     path.resolve(__dirname, '../path/to/destination')); 
+0

我现在明白了。感谢您的回答! – dch