加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

ubuntu 文件批量改名和批量替换文件内容

(2015-06-22 09:44:40)
标签:

it

ubuntu

linux

批量替换文件内容

软件

分类: 软件应用
文本操作中经常有整体查找和替换以及改名的操作,在linux下还是比较方便的,windows下则需要采用特殊工具。下面是linux下一些简单方法,在ubuntu9.10中调试通过。

1.批量改名采用命令rename

rename 语法:

rename [ -v ] [ -n ] [ -f ] perlexpr [ files ]

-v表示显示详细信息,-n表示不实际执行替换,只是看哪些文件会受影响。 -f 表示强制,不管是否有重名。

perlexpr是perl语法的表达式, files则是匹配项。因此,该命令执行结果与perlexpr有关,不一定就是改文件名。

实例: 将所有文件名*.html 改为对应的.htm

rename 's//.html$//.htm$/' *.html

去bak后缀

rename 's//.bak$//' *.bak

将文件名大写改为小写

rename 'y/A-Z/a-z/' *

但rename不能递归修改。

2.递归改名,用find+rename

将文件名的abc改为xyz

find . -name "abc*" -exec rename 's/abc/xyz/' {} /;

该命令可以将当前目录下所有子目录的文件都改名。

 

3.内容替换,用find+sed

将所有ablo 替换为ablozhou

find . -type f -exec sed -i -e "s/ablo/ablozhou/g" {} \;

sed 命令 -i 表示 --in-place,文件原地替换。-e 后跟替换表达式。


4. Ubuntu 的批量改文件名工具 Purrr

Purrr 是 Ubuntu 上一个非常不错的批量改名工具,具有 GUI 界面,并具备文件排除功能。


# 安装:

Ubuntu 软件中心中就有,搜索 purrr 就可安装。或者

    sudo apt-get install purrr

# 技巧:

Purrr 可以通过字符模版来定义新文件名

    [N] 代表文件的原始文件名
    [C] 代表计数,它可以添加三个逗号”,,,”。第一个逗号后的数字表示计数的开始数字;第二个逗号后的数字表示计数间隔;第三个逗号后的数字表示计数数字的宽度。
    例如: [C,3,4,2]的结果为03,07,11,15 .. 表示以3开始,间隔为4,两位数。
    [E] 代表文件的扩展名。

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有