git log和git log > a.txt 在内部处理有什么区别?

nemo 2018-08-16 08:37:16
rt,使用git log,如果信息一屏显示不下,可以通过上下箭头滚动屏幕,按q退出,但是如果使用git log > a.txt 重定向,则会将所有内容一股脑的输出到a.txt里边,请问git内部如何判断两种操作的不同,难道是通过isatty函数判断输出是不是被重定向了么?
...全文
441 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
ckc 2018-08-21
  • 打赏
  • 举报
回复
嗯,可以isatty来判断 #include<stdio.h> #include<unistd.h> int main(){ printf("%d\n",isatty(fileno(stdout))); return 0; } 编译运行这个程序,直接跑,得到1,重定向到文件,得到0
游荟 2018-08-20
  • 打赏
  • 举报
回复
这个输出不是git内部去判断的, 是重定向符号>做的事情, 这个重定向符号会将正确的标准屏幕输出内容重定向到文件中。

19,612

社区成员

发帖
与我相关
我的任务
社区描述
系统使用、管理、维护问题。可以是Ubuntu, Fedora, Unix等等
社区管理员
  • 系统维护与使用区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧