Bash 查找一个文本块并附加另一个文本块
我想找到一个文本块,然后用另一个带有sed的文本块将其追加。由于文本的性质,我找不到正确的sed命令 假设我有一个包含此文本的文件Bash 查找一个文本块并附加另一个文本块,bash,sed,Bash,Sed,我想找到一个文本块,然后用另一个带有sed的文本块将其追加。由于文本的性质,我找不到正确的sed命令 假设我有一个包含此文本的文件 [...] zone "." IN { type hint; file "named.ca"; }; [...] 在找到上面的文本后,我想将以下文本附加到同一个文件中 zone "$variable" { type master; file "$variable.fwd"; allow-
[...]
zone "." IN {
type hint;
file "named.ca";
};
[...]
在找到上面的文本后,我想将以下文本附加到同一个文件中
zone "$variable" {
type master;
file "$variable.fwd";
allow-update { none; };
};
注意特殊字符,如点“,{}和变量的存在。这种字符的存在使我感到痛苦
有人能告诉我如何使用heredoc实现这一点吗
问候在这里,一个heredoc不会有多大帮助
sed -ni '1h;1!H;${g;s/ zone "." IN {\
type hint;\
file "named.ca";\
};\
/&zone "$variable" {\
type master;\
file "$variable.fwd";\
allow-update { none; };\
};\
/;p}' file
有关解释,请参见。您所说的站点的以下文本是什么意思??请检查我的编辑。[..]表示该文件还包含其他数据