![如何将 git fsck 的输出写入文件](https://linux22.com/image/1199634/%E5%A6%82%E4%BD%95%E5%B0%86%20git%20fsck%20%E7%9A%84%E8%BE%93%E5%87%BA%E5%86%99%E5%85%A5%E6%96%87%E4%BB%B6.png)
我在 Ubuntu 16.04.3 LTS 上使用 git 2.43.0。
在 git repo 中我在终端运行以下命令:
git fsck
输出为:
Checking object directories: 100% (256/256), done.
Checking objects: 100% (309003/309003), done.
Verifying commits in commit graph: 100% (1/1), done.
现在我想将此输出附加到现有日志文件。我尝试了所有这些方法,但都不起作用!日志文件保持为空。
git fsck 2> git.log
git fsck &> git.log
git fsck >> git.log 2>&1
难以置信这竟如此难以实现。有解决办法吗?
答案1
从git fsck --help
--[no-]progress 当连接到终端时,默认在标准错误流上报告进度状态,除非指定了 --no-progress 或 --verbose。即使标准错误流未指向终端,--progress 也会强制报告进度状态。
使用git fsck --progress 2> git.log
可以实现您所要求的功能。
答案2
我刚刚找到了解决方案。
缺少的部分是--progress
选项。默认情况下,进度输出不会写入输出!
git fsck --progress > git.log 2>&1