sed 指定行后或行前插入

sed 功能非常强大,这里主要列出一些工作中常用到的举例,以后再追加


示例文本 example.cfg
Config =  
{
    a = 1,       
    b = 1024,
    c = 
    {
        ErrLevel = 4,
        LogLevel = 2,
        TraceLevel = 2,
        ProfLevel = 2,
    },
    MysqlCfg = "db.cfg",
}
  • 在包含某关键字行后插入一段(add.cfg)
    Lua = 
    {
        path = "./script",
        main_file = "main.lua", 
    },
sed -i '/MysqlCfg/ r add.cfg' b 
  • 在包含ProfLevel的行后插入一行 \t >Tab缩进
sed -i '/ProfLevel/a\\ttestLevel = 3'
  • 在包含ProfLevel的行前插入一行 \t >Tab缩进
sed -i '/ProfLevel/i\\ttestLevel = 3'
  • 在包含ProfLevel的行后插入两行 \t >Tab缩进 \n 换行 不加-i输出stout
sed '/ProfLevel/a\\ttestLevel = 3\n\ttest2Level= 4'
  • 在第10行后插入一行 \t >Tab缩进
sed '10 a\\ttestLevel = 3'
  • 把ProfLevel替换为TestLevel
sed 's/ProfLevel/TestLevel/g'
  • 查找字符串,再替换该行其他指定字符
sed /access_log/s/\;/\ access\;/g  
  • 把1~8行的ProfLevel替换为TestLevel
sed '1,8 s/ProfLevel/TestLevel/g'
  • 删除包含ProfLevel的行
sed '/ProfLevel/d' 

学习是一种信仰,分享是一种快乐

posted @   牧之丨  阅读(2023)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
历史上的今天:
2021-12-18 hive表元数据读取不到
2021-12-18 Hive将txt、csv等文本文件导入hive表
2020-12-18 Java代码打成jar后 classgetClassLoadergetResource("")返回为null
2020-12-18 springboot-yml内list、map组合写法
2017-12-18 git checkout -b
2016-12-18 raspberry pi 如何汉化显示中文
2016-12-18 Ubuntu “无法获得锁”解决方案(E: 无法获得锁 /var/cache/apt/archive
点击右上角即可分享
微信分享提示