linux批量更改文件名称|关于在Linux中如何批量修改文件名

linux批量更改文件名称|关于在Linux中如何批量修改文件名的第1张示图

A. linux下批量修改文件名

man bash然后查找%%for i in *; do echo mv $i ${i##_*}.tar;done如果看着显示没问题 就把中间的 echo 去掉 在运行一次

B. 关于在Linux中如何批量修改文件名

for file in "1.txt" "2.txt" "3.txt"doecho $file|来rename "s/\.txt/\.doc/g"done如果当前源目录下全部的txt都要改成doc,只要rename 's/\.txt/.doc/' *.txt

C. linux 重命名大量文件

linux下重命名文件或文件夹、批量实现重命名文件方法一、linux下重命名文件或文件夹的命令mv既可以重命名,又可以移动文件或文件夹.例子:将目录A重命名为Bmv A B例子:将/a目录移动到/b下,并重命名为cmv /a /b/c 其实在文本模式中要重命名文件或目录的话也是很简单的,我们只需要使用mv命令就可以了,比如说我们要将一个名为abc的文件重命名为1234就可以这样来写:mv abc 1234,但是要注意的是,如果当前目录下也有个1234的文件的话,我们的这个文件是会将它覆盖的。二、Linux批量重命名文件会涉及到改变一个字母、改变一些相连字母、改变某些位置的字母、在最前面加上某些字母、或者改变字母的大小写。完成这里五个方法基本上就会解决了Linux批量重命名的工作。1、我想把它们的名字的第一个1个字母变为"q",其它的不变[[email protected] mailqueue]# for i in `ls`; do mv -f $i `echo $i | sed 's/^./q/'`; done或者写个脚本,显得更加清晰:for file in `ls` do newfile =`echo $i | sed 's/^./q/'` mv $file $newfile done 2、修改前面5个字母为zhaozh[[email protected] mailqueue]# for i in `ls`; do mv -f $i `echo $i | sed 's/^…../zhaozh/'`; done3、修改后面5个字母为snail[[email protected] mailqueue]# for i in `ls`; do mv -f $i `echo $i | sed 's/…..$/snail/'`; done4、在前面添加 _hoho_[[email protected] mailqueue]# for i in `ls`; do mv -f $i `echo "_hoho_"$i`; done5、所有的小写字母变大写字母[[email protected] mailqueue]# for i in `ls`; do mv -f $i `echo $i | tr a-z A-Z`; done上面是五中完成有关Linux批量重命名方法。

D. Linux批量重命名文件命令

rename相关命令:mv rename 用于 对文件进行命名管理,可进行批量命名并支持正则表达式, rename命令存在两个版本用法上有所区别 一个是 C语言版本支持通配符,另一个是 Perl版本.支持正则表达式参数-n 操作预览,在不更改文件名称情况下,显示执行后的结果-f 强制执行 【常用通配符说明】 ? 表示一个任意字符 * 表示一个或一串任意字符————————————————-【常用正则表达式符号说明】^ 匹配输入的开始位置$ 匹配输入的结尾. 匹配除换行符外的任意字符+ 匹配前一个字符一次或多次 例如,"zo+"可以匹配"zoo",但不匹配"z"[a-z] 表示某个范围内的字符,例如,"[a-z]"匹配"a"与"z"之间的任何一个小写字母字符。[^m-z] 否定的字符区间。与不在指定区间内的字符匹配。最后更新 2013-05-17 10:41:4[[email protected] www]# rename 's/$/\.^abc/' /home/www/def #给www目录下的abc 更改为def 仅共参考。

E. windows与linux下 如何批量更改文件名

提供一个在Linux下使用Shell脚本来批量改名的方法,我很久不用Windows系统了,所以只有Linux下的方法。

我这边在Linux下的测试过程是下面这样的:

「0」提醒:在终端terminal中,第一步就是把当前目录切换到文件所在目录,用cd命令。

「1」新建文件夹,起名为「rename_by_source」,用来放置「改名前的文件」、「shell脚本文件」、「文件名对应文件」,以及保存「改名后的文件」。你在自己电脑上操作时,也建议你把下载下来的需要改名的文件放到一个单独的文件夹里,这样容易查看一些。

「2」我新建的「rename_by_source」文件夹中,根据你给的文件名对应表,新建了4个「改名前的文件」,它们是空白文件,只是有个文件名而已,另外,估计文件类型是mp3文件,所以后缀名是.mp3,如果你的文件不是mp3类型的话,请届时自行在shell脚本文件里更改相关的代码行。

「3」在文件夹中,新建了「source_name.txt」文件,用来放置(改名前)与(改名后)的对应文件名,跟你给的图片一样,也是一行对应一个文件的,只不过,把ren那一列删除了。如果你要直接使用下面提供的shell脚本的话,也请把你的文件名对应文件中的ren那一列删除,并且「数字」名的前面不要有空格或其它字符。同时,你的文件名对应文件也请保存为「source_name.txt」这个名称和格式的文件。

「4」shell脚本文件「rename_by_source.sh」,内容如下:

#!/bin/bashcatsource_name.txt|whilereadLINEdoori_name=${LINE:0:7};des_name=${LINE:8};cp"${ori_name}.mp3""${des_name}.mp3";done

解释一下,第3句是逐行读取source_name.txt的内容,并赋值给变量LINE,第5句是把该行的第1至第8个字符作为原始文件名,第6句是把该行的第9至末尾的字符串作为新文件名,第7句是在当前文件夹下「复制」(原始文件名.mp3)文件并重命名为(新文件名.mp3)文件。

之所以采用「复制」而不是「移动」命令,主要还是希望避免误操作。

「5」在前面的文件夹中,新建并保存上述shell脚本文件,然后在终端terminal里赋予此shell脚本文件的可执行权限,反正也没有什么关系,我是直接改为了777权限:

sudochmod777rename_by_source.sh

「6」在终端中,在当前文件夹下运行上述shell脚本文件:

./rename_by_source.sh

完成。

下面是我这里的测试截图,

如有帮助,烦请采纳,谢谢!

F. linux下批量修改文件夹名称

批量那么只能,把任意的XXX数字给改道比如ABC数字上去,能明白不

G. linux下如何给多个文件同时改名啊

使用硬链接

先看概念:通过索引节点来进行的连接。在Linux的文件系统中回,保存在磁盘答分区中的文件不管是什么类型都给它分配一个编号,称为索引节点号(InodeIndex)。在Linux中,多个文件名指向同一索引节点是存在的。一般这种连接就是硬连接。

由于指向同一个节点,所以改变一个,其他的也会随之改变。 不过你得先建立硬链接。如下是对文件 oldfile 创建硬链接:

link oldfile newfile ln oldfile newfile

使用脚本来进行批处理

在一个脚本里面添加多条 rm 或 remove 命令,然后运行这个脚本,以后就能一次性修改这些文件名。

H. linux 批量替换某文件夹下的文件名,文件内容,文件夹名称

1.用for灵活,文件名中字符替换,加日期等都可先用下面语句测试一下foriin*aa*;donn=$(echo$i|sed's/aa/bb/');echo"$nn";done保险起见,只拷贝foriin*aa*;donn=$(echo$i|sed's/aa/bb/');cp"$i""$nn";done这是更名,慎用foriin*aa*;donn=$(echo$i|sed's/aa/bb/');mv"$i""$nn";done2.用rename简洁先用-n开关测试rename-n's/aa/bb/'*测试无误去掉-n进行更名rename's/aa/bb/'*

I. linux下批量修改文件名

你先试一下,看行不行保留文件名的前5位 rename ‘s/.{1,5}//’ *删除文件名中两个特定字符回之答间的全部字符 rename ‘s/_.*_//’ *

J. linux下如何批量修改文件名

|ls/data/music/*.mp3|whilereadmyfiledonew=`来echo"$myfile"|tr-d''`mv-f"$myfile"/data/music/$newdone

用源 tr -d ' ' 去除空格得到新文件名

未经允许不得转载:山九号 » linux批量更改文件名称|关于在Linux中如何批量修改文件名

赞 (0)