处理大量文件的时候该如何进行批量修正呢?在 Linux 环境下,我们可以大略敲一些代码就可以完成这个需求。比如以下三种方法:
方法一:mv合营for循环办法进行修正
mv命令既可以重命名,又可以移动文件或文件夹。但是实际运用中,它只能对单个文件重命名。
例如:
mv A B #将目录A重命名为B
mv /a /b/c #将/a目录移动到/b下,并重命名为c
mv合营for循环办法进行批量修正:
方法二:sed命令Linux sed命令是利用script来处理文本文件。sed可依照script的指令,来自动编辑一个或多个文件;简化对文件的反复操作;编写转换程序等。
利用sed命令批量更换文件内容时,格式如下:
例如:
把/test下所有包含abc的文件中的abc更换为def,实行命令
sed的其他用法还有很多,我们就不一一先容了。
方法三:rename命令
当你想要重命名多个文件的时候,rename 工具或许是最大略、最安全和最强大的命令行工具。
代码如下:
●<pcre> 是Perl兼容正则表达式,它表示的是要重命名的文件和该怎么做。正则表达式的形式是‘s/old-name/new-name/’。
●‘-v’选项会显示文件名改变的细节(比如:XXX重命名成YYY)。
●‘-n’选项见告rename命令在不实际改变名称的情形下显示文件将会重命名的情形。这个选项在你想要在不改变文件名的情形下仿照改变文件名的情形下很有用。
●‘-f’选项逼迫覆盖存在的文件。
例如:
字母的更换
rename "s/AA/aa/" #把文件名中的AA更换成aa
修正文件的后缀
rename "s/.html/.php/" #把.html 后缀的改成 .php后缀
批量添加文件后缀
rename "s/$/.txt/" #把所有的文件名都以txt结尾
批量删除文件名
rename "s/.txt//" #把所有以.txt结尾的文件名的.txt删掉
以上,便是我们教给大家的三种在Linux下文件批量重命名的方法,你学会了吗?