我有一个名为“custom.conf”的文件
在这个文件中我有
[globals]
[guest]
我想要做的是在 [globals] 之后插入这一行
#include = HKRoomStat.conf
#include = HKRoomStatFuncODBC.conf
并在 [guest] 之后插入此行
include = room_stat
我有这个代码
sed -i '/'[globals]'/a #include = HKRoomStat.conf' custom.conf
sed -i '/#include = HKRoomStat.conf/a #include = HKRoomStatFuncODBC.conf' custom.conf
sed -i '/'[guest]'/a include = room_stat' custom.conf
但是当我在 cli 上运行这个时,我得到了这个结果
[globals]
include = room_stat
#include = HKRoomStat.conf
include = room_stat
#include = HKRoomStatFuncODBC.conf
include = room_stat
[guest]
include = room_stat
#include = HKRoomStat.conf
include = room_stat
#include = HKRoomStatFuncODBC.conf
include = room_stat
我刚刚开始学习 sed。任何帮助将不胜感激。先谢谢了
答案1
追加行的方法是通过a\
sed 命令。这种方式在视觉上非常直观地说明要添加多少行以及它们是什么。
sed -i -e '
/\[globals]/a\
#include = HKRoomStat.conf\
#include = HKRoomStatFuncODBC.conf
/\[guest]/a\
include = room_stat
' custom.conf