sed 匹配第一次出现的字符串,追加文件内容
sed match first occurrence of string, append file content
在使用 sed 输出我想要的内容时遇到一些问题:
我有我的文件内容(idmap):
idmap config ....
idmap config ....
正在写入文件(测试)
[global]
[global]
我使用了以下 sed
命令:-
sed '/\[global\]/ r idmap' /tmp/testing
该命令按预期工作并匹配所有 [global]
标记并在所有出现的 [global]
:
之后插入文本
[global]
idmap config ....
idmap config ....
[global]
idmap config ....
idmap config ....
我尝试以下操作以仅匹配第一次出现的 [global]
sed '0,\[global\]/ r idmap' /tmp/testing
然后生成:
idmap config ....
idmap config ....
idmap config ....
idmap config ....
[global]
idmap config ....
idmap config ....
[global]
任何关于这里发生的事情的解释都将不胜感激,awk
也对我有用,以及如何获得所需的输出:
[global]
idmap config ....
[global]
idmap config ....
运行 在 Centos 7.1 bash.
awk 'FNR==NR{a=a"\n"[=10=];next} /^\[global\]/&& !f{=""a;f=1};1' idmapfile testingfile
在使用 sed 输出我想要的内容时遇到一些问题:
我有我的文件内容(idmap):
idmap config ....
idmap config ....
正在写入文件(测试)
[global]
[global]
我使用了以下 sed
命令:-
sed '/\[global\]/ r idmap' /tmp/testing
该命令按预期工作并匹配所有 [global]
标记并在所有出现的 [global]
:
[global]
idmap config ....
idmap config ....
[global]
idmap config ....
idmap config ....
我尝试以下操作以仅匹配第一次出现的 [global]
sed '0,\[global\]/ r idmap' /tmp/testing
然后生成:
idmap config ....
idmap config ....
idmap config ....
idmap config ....
[global]
idmap config ....
idmap config ....
[global]
任何关于这里发生的事情的解释都将不胜感激,awk
也对我有用,以及如何获得所需的输出:
[global]
idmap config ....
[global]
idmap config ....
运行 在 Centos 7.1 bash.
awk 'FNR==NR{a=a"\n"[=10=];next} /^\[global\]/&& !f{=""a;f=1};1' idmapfile testingfile