标签: bash shell
我想试验终端和彩色输出,但同时我想让stdout / stderr重定向到文件,而不必处理这些转义序列。
有没有办法检查stderr是否从shell脚本中连接到终端?
stderr
答案 0 :(得分:11)
标准错误stderr的文件描述符是2. test或[命令(通常是内置的shell)有一个选项-t来测试文件描述符是否连接到终端:
test
[
-t
if [ -t 2 ] then : stderr is a terminal else : stderr is not a terminal fi