gpt4 book ai didi

regex - Linux 从命令行查找和替换

转载 作者:太空宇宙 更新时间:2023-11-04 10:29:51 24 4
gpt4 key购买 nike

我正在寻找一个 linux 命令行脚本来执行以下操作。

假设我有一个文件

ABC|1|READ11|Reading|1
ABj|2|READ11|Reading|2
CBD|3|WRIT11|Reading|3
BCD|4|READ11|Reading|4
CDE|5|WRIT11|Reading|5
CBA|6|READ11|Reading|6

对于以字母“C”开头的每一行,如果它有“WRIT11”,则替换为“REPL11”

脚本后的文件

ABC|1|READ11|Reading|1
ABj|2|READ11|Reading|2
CBD|3|REPL11|Reading|3
BCD|4|READ11|Reading|4
CDE|5|REPL11|Reading|5
CBA|6|READ11|Reading|6

最佳答案

可以这样做:

sed 's/\(^C.*\)WRIT11/\1REPL11/g' your_file

解释:

s/search_this/replace_it_with_this/g s开头的是搜索,最后的g是全局的,不是一行而已。

在search_this部分,\( and \)中的部分在replace_it_with_this部分可以写成\1

^C 表示行首有一个 C,后面的 . 表示任意字符,* 表示前导字符可以完全不出现或出现多次。

关于regex - Linux 从命令行查找和替换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40472695/

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