gpt4 book ai didi

regex - 使用 sed 提取 git diff 的插入和删除次数

转载 作者:行者123 更新时间:2023-12-02 03:32:03 25 4
gpt4 key购买 nike

我正在使用 gif diff --shortstat filename 来获取文件中更改的行数。输出示例如下:

 1 file changed, 1 insertion(+), 1 deletion(-)

现在我想将该命令与 sed 一起使用,并仅提取插入和删除的数量,在本例中为 11.

我使用 sed 来匹配和提取组,但我得到的只是再次从 git 命令中得到的相同文本。我的命令如下(尝试仅获取插入行数)。

sed "s/\([0-9]+\) insertion/\1/"

因此,完整的执行将如下所示:

$ git diff --shortstat filename | sed 's/\([0-9]+\) insertion/\1/'
> 1 file changed, 1 insertion(+), 1 deletion(-)

我需要更改什么才能使其正常工作,或者还有其他方法吗?

最佳答案

您可以使用此sed命令来提取插入和删除编号:

git diff --shortstat filename | 
sed -E 's/.* ([0-9]+) insertion.* ([0-9]+) deletion.*/\1,\2/'

这将产生一对逗号分隔的数字,例如

1,1

关于regex - 使用 sed 提取 git diff 的插入和删除次数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51565729/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com