sed '/keyword/!d; s/keyword/replacement1/g; s/another_keyword/replacement2/g' example.txt sed '/keyword/!d; s#keyword#replacement1#g; s#another_keyword#replacement2#g' example.txt
这个命令将执行以下操作:
/keyword/!d是逻辑操作符,!表示否定。!d表示如果行不匹配关键字,则删除该行。s/keyword/replacement1/g是替换命令,将行中的所有"keyword"替换为"replacement1"。s/another_keyword/replacement2/g是另一个替换命令,将行中的所有"another_keyword"替换为"replacement2"。
这个命令将只输出包含关键字并经过两次替换后的结果行,并删除其他行。
请将 example.txt 替换为你实际使用的文件名,并根据需要修改替换命令及关键字。
这个命令中的操作依次执行:
/keyword/!d是逻辑操作符,!表示匹配不成功,d表示删除。所以这个命令会删除不包含关键字的行。s#keyword#replacement1#g是替换命令,将行中的所有出现的"keyword"替换为"replacement1"。s#another_keyword#replacement2#g是另一个替换命令,将行中的所有出现的"another_keyword"替换为"replacement2"。
这个命令将只输出包含关键字并经过两次替换后的结果行