Jee*_*enu 4 stream
默认情况下,某些程序根据它们写入的流的类型格式化其输出.例如,输出ls和ls > file看起来不同.我想知道一个程序是如何实现的.另外,有没有一种方法可以欺骗这些程序,就好像输出流是一个实际上是文件的终端(特别是当它们没有任何影响输出格式的选项时)?
ls
ls > file
R S*_*hko 5
通过isatty:
isatty
if (!isatty(fileno(stdout)) { // redirected to a file or piped to a process }
欺骗的一种方法是开始,而不是重定向script.现在,所有转到'tty'的内容(包括你输入stdin的内容以及发送到输出的内容)都被发送到一个名为typescript的文件.
script
归档时间:
15 年,11 月 前
查看次数:
1195 次
最近记录: