【发布时间】:2011-01-09 17:04:27
【问题描述】:
当您使用git 时,它似乎神奇地知道标准输出是通过管道还是进入文件,以及何时显示到控制台。例如,如果您启用了颜色并且您这样做了
git status
它将为列出的不同类别文件的输出着色。但是,如果你这样做
git status | less
或
git status > status.txt
它会删除linux color formatting,而您只会看到纯文本。
git 如何检测其命令的输出是进入文件还是进入终端?
【问题讨论】:
-
我不认为这应该在超级用户上,因为 OP 真正要寻找的是程序如何,即。 git 检测它是否被重定向。
-
我同意@tommieb75,这是一个 API 问题,而不是我如何管理问题。
-
顺便说一句,如果你不只是好奇,而且你问这个是因为你想对 git 的输出进行着色和,你可以弄乱@987654328 @ 设置,例如
core.pager(更少)和color.pager(真)。 kernel.org/pub/software/scm/git/docs/git-config.html
标签: linux terminal xterm gnome-terminal konsole