文件批量改名和批量替换文件内容
2009-12-16 15:36
253 查看
文本操作中经常有整体查找和替换以及改名的操作,在linux下还是比较方便的,windows下则需要采用特殊工具。下面是linux下一些简单方法,在ubuntu9.10中调试通过。1.批量改名采用命令renamerename 语法:rename [ -v ] [ -n ] [ -f ] perlexpr [ files ]-v表示显示详细信息,-n表示不实际执行替换,只是看哪些文件会受影响。 -f
表示强制,不管是否有重名。perlexpr是perl语法的表达式,
files则是匹配项。因此,该命令执行结果与perlexpr有关,不一定就是改文件名。实例: 将所有文件名*.html 改为对应的.htmrename 's/\.html$/\.htm$/' *.html去bak后缀rename 's/\.bak$//' *.bak将文件名大写改为小写rename 'y/A-Z/a-z/' *但rename不能递归修改。2.递归改名,用find+rename将文件名的abc改为xyzfind . -name "abc*" -exec rename 's/abc/xyz/' {} \;该命令可以将当前目录下所有子目录的文件都改名。3.内容替换,用find+sed将所有ablo 替换为ablozhoufind . -type f -exec sed -i -e "s/ablo/ablozhou/g" {} \;sed 命令 -i 表示 --in-place,文件原地替换。-e 后跟替换表达式。
表示强制,不管是否有重名。perlexpr是perl语法的表达式,
files则是匹配项。因此,该命令执行结果与perlexpr有关,不一定就是改文件名。实例: 将所有文件名*.html 改为对应的.htmrename 's/\.html$/\.htm$/' *.html去bak后缀rename 's/\.bak$//' *.bak将文件名大写改为小写rename 'y/A-Z/a-z/' *但rename不能递归修改。2.递归改名,用find+rename将文件名的abc改为xyzfind . -name "abc*" -exec rename 's/abc/xyz/' {} \;该命令可以将当前目录下所有子目录的文件都改名。3.内容替换,用find+sed将所有ablo 替换为ablozhoufind . -type f -exec sed -i -e "s/ablo/ablozhou/g" {} \;sed 命令 -i 表示 --in-place,文件原地替换。-e 后跟替换表达式。
相关文章推荐
- 文件批量改名和批量替换文件内容
- linux 批量替换文件内容及查找某目录下所有包含某字符串的文件(批量修改文件内容)
- linux 批量替换文件内容及查找某目录下所有包含某字符串的文件(批量修改文件内容)
- php实现批量删除挂马文件及批量替换页面内容完整实例
- linux 批量替换文件内容及查找某目录下所有包含某字符串的文件(批量修改文件内容)
- php实现批量删除挂马文件及批量替换页面内容完整实例
- 基于命令的批量修改文件内容
- shell批量创建文件及改名
- 批量修改多个文件内容
- 用ASP实现远程批量文件改名
- Linux 批量清楚文件内容而不删除文件
- 批量修改文件内容
- 好用的文件批量改名工具推荐
- 遍历目录、批量替换文件内容的类
- Matlab 在 word中插入特定内容,批量生成不同内容的文件
- 文件批量改名
- 用ASP实现远程批量文件改名
- 【Python小工具】Python实现批量解析PDF文件提取内容并写入到Excel中
- Shell脚本实现批量替换文件内容
- linux下批量替换文件内容的方法