sed 命令在文件中的特定字符串后面插入多行内容

时间:2024-10-23 08:36:18

举例在/etc/rc.d/rc.init 脚本文件中插入if 代码处理逻辑

        cat /etc/rc.d/rc.init  | grep -n __debug.sh > /dev/null 2>&1 #文件中是否存在__debug.sh
        if [ $? -ne 0 ];then #不存在向rc.init 脚本中插入处理逻辑

                sed -i '/export FTP_DYNAMIC_PORTS=/a if [ -f /etc/__debug.sh ];then \n           /etc/__debug.sh \nfi' /etc/rc.d/rc.init # 在“export FTP_DYNAMIC_PORTS=” 所在行的下一行插入

“if [ -f /etc/__debug.sh ];then” " /etc/__debug.sh"和“fi” 三行内容

        fi

sed -i "/关键字/a 要插入内容1\n 要插入内容2" 插入的文件