我正在尝试制作一个简单的 npm 脚本来运行 eslint 并检查它是否在 CI 中,如果是,则将结果输出到文件中。
这可以将结果输出到终端:
"lint": "eslint src --cache --format $(if [ -z ${SOMEVAR} ]; then echo "stylish"; else echo "checkstyle"; fi)",
但是如果存在使用 > checkstyle.xml
存在的 ENV var,我想将它们保存到文件中
有没有办法把它附加到那个命令上?我已经尝试了几种方法,但没有运气让文件输出。
编辑:我能够通过添加--color | tee checkstyle.xml
来使其工作,该无论 ENV var 值如何都会写入 xml 文件并向终端显示彩色版本。这并不理想,但确实有效。不过,对其他想法持开放态度。
我发现了这个很棒的图表,它显示了您可以一起使用哪些输出组合来实现这一目标:https://askubuntu.com/a/731237/541276
你的意思是这样吗?
if [ "$somevar" ]; then exec >checkstyle.xml; fi; eslint ...