我正在使用下面的sed
命令进行搜索和替换操作。
sed -i '/searchstring/s|find string|replace string|g' filename
它会更改输入文件中的所有引用。我怎么能只做一次。
谢谢。
例如,
a
a
b
b
a
c
d
这是输入文件。
我使用的命令如下,
sed -i '/a/s|a|changed|g' filename
输出如下,
changed
changed
b
b
changed
c
丁
换了三次。
但我只需要换一次。
预期产出是,
changed
a
b
b
a
c
d
最佳答案
您可以使用这个sed
:
sed -i '/searchstring/s|find string|replace string|'
注意:已删除
g ( global substitution )
根据你的更新,
sed -i '/search/{ s/search/changed/; t loop;}; :loop; n; b loop' yourfile
关于linux - 搜索并替换首次出现的字符串,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/23755206/