我在我的 shell 脚本上运行这一行
sudo npm install -g yaml-cli -y 2>&1 >/dev/null
我希望不会得到任何输出,但我仍然得到
npm WARN deprecated [email protected]: Please update to minimatch 3.0.2 or higher to avoid a RegExp DoS issue
答案1
重定向是从左到右评估的,你也可以用相反的方式。只需交换重定向:
sudo npm install -g yaml-cli -y >/dev/null 2>&1
在sudo npm install -g yaml-cli -y 2>&1 >/dev/null
:
首先,对于
2>&1
,STDERR (FD 2) 被发送到终端(准确地说,STDOUT (FD 1) 当前连接到的位置,大概是终端),因此显示错误然后,对于
>/dev/null
,STDOUT 被发送到/dev/null
,这稍后会发生