【问题标题】:git diff, getting just the changed charactersgit diff,只获取更改的字符
【发布时间】:2016-11-27 21:34:08
【问题描述】:

我想获取用于更改目录中文件的所有字符的列表。

我最接近这个问题的是使用:

git diff --color-words="[^[:space:]]|([[:alnum:]]|UTF_8_GUARD)+"
--no-index ./original_directory/ ./changed_directory/

通过使用此命令,我得到带有突出显示字符的行,这些字符已更改。有没有办法 sed/grep/awk 输出,所以输出将只是彩色字符?

【问题讨论】:

    标签: bash parsing awk sed git-diff


    【解决方案1】:
    git diff --color | awk '/^\33\[3[12]m/'
    
    1. 使用 --color 以便将颜色传递给 Awk

    2. 绿线将以转义序列\33[32m开始

    3. 红线将以转义序列\33[31m开始

    Example

    【讨论】:

    • 效果很好,为我节省了很多时间,谢谢
    猜你喜欢
    • 2015-12-22
    • 2020-09-16
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-24
    相关资源
    最近更新 更多