stderr重定向中的BASH tput错误

时间:2015-10-01 12:01:36

标签: bash redirect token stderr tput

编写一个应该在终端上显示错误的函数并将它们保存到stderr

die () {
echo "$(tput setaf 1) ERROR: $*. Aborting...  $(tput sgr 0)" > &2 
exit 1 
}

不幸的是,这将生成

syntax error near unexpected token `&'
`    echo "$(tput setaf 1) ERROR: $*. Aborting...  $(tput sgr 0)" > &2 '

我明白这是因为tput,但我无法弄明白为什么。

我并不十分关心我的stderr中的颜色,但我想将它们保留在显示屏上。

1 个答案:

答案 0 :(得分:1)

重定向到 stderr >&2完成 - 没有空格。