zoukankan      html  css  js  c++  java
  • Linux批量替换某种类型文件中的字符串sed和grep命令使用

          今天在修改rpm打包的spec配置文件时,遇到一个问题就是:需要将100个左右源代码中的spec配置文件中的Release一行中的发布版本号使用宏变量%{_release}进行替换

        如果要手工修改需要修改100多次,但是使用sed和grep命令很简单:

    sed -i "s/Release:    1/Release:    %{_release}/g" 'grep Release:    1 -rl --include="*.spec" ./'
    

           以上的命令有待求证,暂时这么写了,明天确认一下再加以修改吧。

    Linux下批量替换多个文件中的字符串的简单方法。

    用sed命令可以批量替换多个文件中的字符串。
                   
    sed -i "s/原字符串/新字符串/g" `grep 原字符串 -rl 所在目录`
    例如:我要把mahuinan替换为huinanma,执行命令:sed -i "s/mahuinan/huinanma/g" 'grep mahuinan -rl /www'
    这是目前linux最简单的批量替换字符串命令了!
    具体格式如下:
    sed -i "s/oldString/newString/g" `grep oldString -rl /path`
    实例代码:sed -i "s/大小多少/日月水火/g" `grep 大小多少 -rl /usr/aa`
    sed -i "s/大小多少/日月水火/g" `grep 大小多少 -rl ./`

    参考了这两篇文章:

    1、Linux批量替换多个文件中字符串

    Linux批量替换多个文件中字符串

    2、Linux shell 批量替换多个文件中字符串 

    Linux shell 批量替换多个文件中字符串 接

    3、SED与AWK学习笔记

    SED与AWK学习笔记



  • 相关阅读:
    vue父子组件传值的方式
    定时任务写法
    仅仅为笔记
    consul剔除某个服务
    mybatis批量查询
    一次eureka的事故
    feign的工作原理
    JVM优化
    threadlocal应用
    秋招总结
  • 原文地址:https://www.cnblogs.com/ccf19881030/p/12004890.html
Copyright © 2011-2022 走看看