使用package.json脚本在同一目录中复制多个文件



这适用于命令行:

cp target/{sitemap.xml,robots.txt} ../fs-dtest-app/

但是,如果我把命令放在package.json中的脚本标记中,如下所示:

"scripts": {
"c": "cp target/{sitemap.xml,robots.txt} ../fs-dtest-app/"
},

发生这种情况:

ole@mkt:~/Temp/dtest/fs-dtest-md$ cp target/{sitemap.xml,robots.txt} ../fs-dtest-app/
ole@mkt:~/Temp/dtest/fs-dtest-md$ npm run c
> @fireflysemantics/fs-dtest-md@1.0.1 c /home/ole/Temp/dtest/fs-dtest-md
> cp target/{sitemap.xml,robots.txt} ../fs-dtest-app/
cp: cannot stat 'target/{sitemap.xml,robots.txt}': No such file or directory

想法?

npm将使用/bin/shBourne shell实现,而不是用户的当前交互式shell,无论是什么(或MS平台上的cmd.exe(。

在交互式zsh shell中:

% echo $0
zsh

从同一交互式shell运行npm

% npm run shell
> so65660483-npm-shell@1.0.0 shell /so/so65660483-npm-shell
> echo $0
sh

cp在任何情况下都支持复制多个文件而不依赖shell globbing:

cp target/sitemap.xml target/robots.txt ../fs-dtest-app/

相关内容

  • 没有找到相关文章

最新更新