Grep
diff 僅顯示已更改文件中的添加內容
通常
diff
和分別用和git diff
顯示原始行和修改行。有什麼辦法,我可以過濾只看到修改後的行嗎?這將立即將要讀取的行數減少 2 倍。-``+
我假設
git diff test.yml | grep '^+' | less -R
和
git diff test.yml | egrep '^+' | less -R
得到相同的結果。即他們會在文件中顯示任何新添加的內容。但是
egrep
向我展示了整個文件。為什麼呢?無論如何,使用上述方法,我會失去顏色。有什麼辦法可以保持顏色嗎?
您可以使用將和行與使用紅色/綠色文本突出顯示的更改一起
--word-diff
壓縮,並停止使用 grep。+``-
-U0
如果你真的想進一步壓縮它,你可以將它與刪除差異周圍的所有上下文相結合。這種方法比使用 grep 更好,因為您不會失去輸出,您可以判斷何時添加或更改了一行,並且您不會完全失去刪除,同時仍將輸出壓縮為易於閱讀的內容。
@Stephen Kitt在這裡已經回答了有關 egrep 的問題的答案