在package.json中,我有:
"scripts": {
"foo": "echo foo",
"bar": "npm run foo > result.txt"
}
然后如果我运行npm run bar
,我将在result.txt
中得到文本:
> kaze@0.0.55 foo D:\code\kaze
> echo foo
foo
那不是我所期望的。我所期望的只是:
foo
那么,我的npm脚本有什么问题?
答案 0 :(得分:1)
使用>
时,其左命令执行的所有标准输出都将写入result.txt
,包括问题中显示的描述性信息。与npm run bar
无关。
如果仅在命令行窗口中运行npm run foo > result.txt
,则将检索到相同的结果。
要仅在foo
中包含result.txt
,可以使用npm选项--silent
:
"scripts": {
"foo": "echo foo",
"bar": "npm run foo --silent > result.txt"
},