【发布时间】:2014-09-12 09:43:21
【问题描述】:
当我们使用 ls 时,可以看到一些输出具有不同的颜色而不是默认的黑色,所以我认为输出应该添加一些转义序列来调整终端的颜色,但是当使用 ls > ls.log 时,在 ls.log 中我们看不到转义序列,因此程序需要确定输出是文件还是终端,如果是终端,它将使用 terminfo 打印出结果,否则只打印出真实结果没有转义序列! 是否有任何 API 可以用来决定我在 STD 输出之前提到的内容是终端文件还是普通文件。如果没有API,我们该怎么做才能找到真相!
【问题讨论】:
-
@PaulR 是的,它是重复的。回答时不知道这一点。