通过sed命令替换批量文件中的字符串
有时需要对目录下的多个文件中的字符串进行替换,如果手动逐个替换既费时又容易漏掉。此时可通过sed命令对指定目录下的所有文件进行操作。
假如将命令写在一个sh文件中,名字为replace_string_in_all_files.sh,接受三个参数:第一个参数指定要操作的目录;第二个参数指定文件中的要替换的字符串;第三个参数指定替换后的字符串,如:
./replace_string_in_all_files.sh src csdn github
第一种方式通过for,如下所示:
for file_name in $(find $1 -type f -name "*"); do#echo "file name: ${file_name}"sed -i "s/$2/$3/g" ${file_name}
done
第二种方式,可通过exec将第一种方式写在一条语句中,如下:
find $1 -type f -name "*" -exec sed -i "s/$2/$3/g" {} \;
第三种方式,也可通过xargs写在一条语句中,如下:
find $1 -type f -name "*" | xargs sed -i "s/$2/$3/g"
注意: 如果需要替换的源字符串或目的字符串中包含反斜杠、星号、单引号等特殊字符,则需要使用另一个反斜杠(\)对其进行转义。如果连续有多个特殊字符,则需要分别转义每个字符。如将src目录下的所有文件中的#include <opencv/core.hpp>替换为#include <opencv2/highgui.hpp>,则执行以下命令:
find src -type f -name "*" | xargs sed -i "s/opencv\/core/opencv2\/highgui/g"
GitHub:https://github.com/fengbingchun/Linux_Code_Test
通过sed命令替换批量文件中的字符串相关推荐
- Sed命令替换指定文件中某一行所有内容
Linux下使用Sed命令:sed -i 's/Mcu.*/Mcu version:123456/g' /etc/mversion 其中,s表示将替换文件所有行:若替换某几行则使用如下方式:1s,2s ...
- sed替换所有文件中的字符串
查找文件夹下包含字符串的文件 例:查找/usr/local目录下所有包含"rubyer.me"的文件. grep -lr 'rubyer.me' /usr/local/* vim替 ...
- python 操作word 替换字符串为图片_用python将.docx文件中的字符串替换为jpg
对不起,我的英语不好.在 我试图用.jpg文件替换.docx文件中的字符串.首先,我将JPEG转换为BMP并将其移动到剪贴板,然后使用找到.执行用"^c"替换docx文件中的特殊字 ...
- linux字符串排序文件,Linux awk+uniq+sort 统计文件中某字符串出现次数并排序
https://blog.csdn.net/qq_28766327/article/details/78069989 在服务器开发中,我们经常会写入大量的日志文件.有时候我们需要对这些日志文件进行统计 ...
- linux sed 批量替换多个文件中的字符串
原文: http://blog.csdn.net/kauu/article/details/1757325 一.linux sed 批量替换多个文件中的字符串 sed -i "s/oldst ...
- [转载]Linux批量替换不同文件中的相同字符串
转载自:http://bbs.phpchina.com/blog-191373-187668.html 方法1 这两天在构建一个应用的使用用到了maven,由于project很大,足足有700多个 ...
- linux sed命令新文件名,linux中sed命令批量修改
sed命令下批量替换文件内容 格式: sed -i "s/查找字段/替换字段/g" `grep 查找字段 -rl 路径` 文件名 -i 表示inplace edit,就地修改文件 ...
- linux 批量替换所有文件中包含的字符串
sed -i "s/原来字符串/新字符串/g" `grep 原来字符串 -rl .`格式: sed -i "s/查找字段/替换字段/g" `grep 查找字段 ...
- Linux下sed命令替换配置文件中某个变量的值(改变包含字符的一行的值)之二——只改变第一出现的那一行
一.背景 在之前的文章中有介绍过<Linux下sed命令替换配置文件中某个变量的值(改变包含字符的一行的值)> 但是这种方法存在一定的问题,就是假如某个变量在一个文件中出现两次,却只想更改 ...
最新文章
- 网站优化靠前排名讲方法
- 使用 class-dump 扫描 app 关键字
- ubuntu和python快速换源
- 深入解读 MySQL 架构设计原理,剖析存储架构选型核心
- Python知识总结(二)
- DNS(BIND) 正向解析 反向解析 基本服务的搭建
- python os.remove拒绝访问_「进阶Python」第八讲:代理模式
- 分享2011年10月网上随机搜集的超酷超有趣的web开发和Javascript代码
- Apache Rewrite 拟静态配置
- 环信即时通讯在工程中的安装——Nusen_Liu
- Excel数据分析实例
- Swift网络请求框架Moya的使用
- python爬虫--scrapy框架的学习和使用(七)⭐---第二部分
- 树莓派成功使用 TPLINK WDN5200H网卡( 芯片 rtl8821cu )
- 【UNR #6 B】机器人表演(DP)
- TextBox 单行文本框,多行文本框
- ios多线程浅谈和使用
- Unity-多米诺骨牌
- 战争地带2100(Warzone 2100)
- 操作系统-Linux内核系列