社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Git

在macos上使用sed替换git日志中的名称(对于gource)

Emile Claassens • 5 年前 • 630 次点击  

我正试着制作一个关于我们的软件开发项目的很好的视频使用 Gource a可以生成所有回购的组合git日志,其中: 第一 gource --output-custom-log ../logs/repo1.txt 然后 cat *.txt | sort -n > combined.txt 这将生成一个combined.txt文件,该文件是一个以管道分隔的文件,如下所示:

1551272464|John|A|repo1/file1.txt
1551272464|john_doe|A|repo1/folder/file9.py
1551272464|Doe, John|A|repo2/filex.py

所以它是:epoch提交者名称a或d或c提交文件

我要解决的实际问题是,我的开发人员使用了具有不同提交者名称的不同git客户机,因此id希望将他们的所有名称替换为一个版本我不介意每种情况设置多个sed。 所以找“约翰”,“约翰·多伊”和“多伊,约翰”替换为“约翰·多伊”应该在我的macbook上完成。

所以我试着 sed -i -r "s/John/user_john/g" combined.txt 但这里的问题是它找到了“john”和“doe,john”,只替换了“john”部分,所以我需要做一个模糊搜索并替换整个列。

谁能帮我找到正确的正则表达式?

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/48465
 
630 次点击  
文章 [ 3 ]  |  最新文章 5 年前