Linux下批量替换文件内容方法

1:查找
find . -type f -name "*.html"|xargs grep ‘yourstring’

2:查找并替换
find -name ‘要查找的文件名‘ | xargs perl -pi -e ‘s|被替换的字符串|替换后的字符串|g‘

perl -pi -e
在Perl 命令中加上-e 选项,后跟一行代码,那它就会像运行一个普通的Perl 脚本那样运行该代码.
从命令行中使用Perl 能够帮助实现一些强大的、实时的转换。认真研究正则表达式,并正确地使用,将会为您省去大量的手工编辑工作。

3:批量修改文件夹权限
find . -type -d -name *.html|xargs chmod 755

4:批量修改文件权限
find . -type -f -name *.html|xargs chmod 644

查找和替换是很常用的操作。

这里介绍的小小技巧可以使你很轻松地完成大量重复、繁琐的工作。

以例子进行说明

在当前目录下的.c文件中查找字符串"password"
grep "password" *.c

在当前目录及其多个子目录中查找文件test.c
find . -name "test.c" -print

在当前目录及其多个子目录中查找.vbs文件并删除之
find . -name "*.vbs" -exec rm {} \;

在当前目录及其多个子目录下的.c文件中查找字符串"password"
find . -name "*.c" -print | xargs grep "password"

在当前目录下的.c文件中把字符串"password"替换成"pwd"
perl -pi -e ‘s/password/pwd/g‘ *.c

在当前目录下的.c文件中把字符串"password"替换成"pwd"并以.bak扩展名备份
perl -pi.bak -e ‘s/password/pwd/g‘ *.c

在当前目录及子目录下的.c文件中替换字符串"password"为"pwd"
find . -name "*.c" -print | xargs perl -pi -e ‘s/password/pwd/g‘

使用sed操作批量替换

  格式: sed -i "s/查找字段/替换字段/g" `grep 查找字段 -rl 路径`

  linux sed 批量替换多个文件中的字符串

  sed -i "s/oldstring/newstring/g" `grep oldstring -rl yourdir`

  例如:替换/home下所有文件中的www.viiving.com为www.zjant.com

  sed -i "s/www.viiving.com/www.zjant.com/g" `grep www.viiving.com -rl /mysites

   在当前目录下操作:sed -i "s/www.viiving.com/www.zjant.com/g" *

时间: 2024-10-12 21:55:46

Linux下批量替换文件内容方法的相关文章

[转帖]Linux下批量替换文件内容方法

https://www.cnblogs.com/fjping0606/p/4428850.html 刚才用到的命令 原作者写的挺好的记录一下 以后 用. 1:查找find . -type f -name "*.html"|xargs grep ‘yourstring’ 2:查找并替换find -name '要查找的文件名' | xargs perl -pi -e 's|被替换的字符串|替换后的字符串|g' perl -pi -e在Perl 命令中加上-e 选项,后跟一行代码,那它就会像

Linux下 批量替换文件内容方法和odoo替换谷歌字体

#odoo#用中科院CDN解决odoo用到google字体速度慢问ti Linux下批量替换文件内容方法 http://www.cnblogs.com/fjping0606/p/4428850.html 1:查找find . -type f -name "*.html"|xargs grep 'yourstring' 2:查找并替换find -name '要查找的文件名' | xargs perl -pi -e 's|被替换的字符串|替换后的字符串|g' perl -pi -e在Per

linux下批量替换文件内容

linux下批量替换文件内容 1.网络上现成的资料 格式: sed -i "s/查找字段/替换字段/g" `grep 查找字段 -rl 路径` linux sed 批量替换多个文件中的字符串 sed -i "s/oldstring/newstring/g" `grep oldstring -rl yourdir` 例如:替换/home下所有文件中的www.admin99.net为admin99.net sed -i "s/www.admin99.net/a

Linux下批量替换文件内容和文件名(转)

1.批量替换指定多个文件的文件内容 在指定目录/your/path里,查找包含old_string字符串的所有文件,并用new_string字符串替换old_string字符串. sed -i "s/old_string/new_string/g" `grep old_string -rl /your/path` 2.批量修改指定多个文件的文件名 在指定的路径/your/path下,查找以old_name字符串开头的所有文件,并以new_string替换掉old_string字符串.

linux下sed批量替换文件内容

在linux超级终端下编辑文档是件比较麻烦的事情,下面简单介绍一下如何在linux下批量替换文件内容 linuxsed 批量替换多个文件中的字符串 格式: sed -i "s/查找字段/替换字段/g" `grep 查找字段 -rl 路径` 例如:替换/home下所有文件中的xxx为ooo sed -i "s/xxx/ooo/g" `grep xxx -rl /home` 单个文件中的字符串替换 将文件1.txt内的文字“111”替换成“222” sed -i &qu

Linux下快速清空文件内容的三种方法

Linux下快速清空文件内容的三种方法在Linux环境中,我们如果想快速清空一个文件或者log的内容: 1.#echo "" > test.txt(文件大小被截为1字节) 2.# > test.txt(文件大小被截为0字节) 3.#cat /dev/null > /home/test.txt(文件大小被截为0字节)————————————————版权声明:本文为CSDN博主「贾维斯博客」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声

sed批量替换文件内容

sed -i "s/123/456/g" `grep 123 -rl ./ | grep -v log` #把当前目录下所有文件中的123替换成456,包括子目录啊 sed批量替换文件内容

Linux下批量修改文件及文件夹所有者及权限

Linux下批量修改文件及文件夹所有者及权限需要使用到两个命令,chmod以及chown 例:对/opt/Oracle/目录下的所有文件与子目录执行相同的权限变更: chmod -R 700 /opt/oracle/ -R参数是递归 处理目录下的所有文件以及子文件夹 700是变更后的权限表示(只有所有者有读和写以及执行的权限) /opt/oracle/ 是需要执行的目录 例:对 /opt/oracle/  目录下的所有文件与子目录执行相同的所有者变更,使所有者修改为oinstall用户组的ora

Perl 使用perl命令批量替换文件内容

对linux系统下面多个文本文件内容做处理,是SA经常需要完成的工作.如何高效的完成这个工作,perl应该是一个不错的语言工具.你甚至不需要编写perl脚本,用命令就可以完成上面的工作. perl 命令可以批量替换文件中的一些内容,操作起来非常高效.下面举几个例子: perl -pi -e "s/aaa/bbb/gi" test.txt 上面的命令把test.txt文件中的字符aaa替换成bbb perl -pi.bak -e "s/aaa/bbb/gi" test