导航:首页 > 文件类型 > 批量文件改名linux

批量文件改名linux

发布时间:2023-09-07 15:46:03

『壹』 linux文件改名的命令

1、连接上相应的linux主机,进入到等待输入shell指令的linux命令行状态下。

『贰』 linux文件重命名命令

具体如下。
mv较简单的处理命令:mvmv原文件名新文件名如:mvmyFilenewName将MyFile重命名为newName.linux提供了一个重命名文件命令:rename
renamefromtofile1file2。这个命令在批量唯和重命名是更好用如:renamemyFilenewNamemyFile.textmyFile2.textmyFile3.text。
Linux是一种自由和开放源代码的类UNIX操作系统。该操作系统的内核由林纳斯·托瓦兹在1991年10月5日首次发布。在加上用户空间的应用程序之后,成为Linux操作系统。Linux也是自由软件和开放源代码软件发展中最著名的皮山举例子。只要遵循GNU通用公共许可证,任何个人和机构都可以自由地使用Linux的所有底层源代码,也可以自由地修改和再发布。大多数Linux系统还包括了像提供GUI界面的XWindow之类的程序。除了一部分专家之外,大多数人都是直接使用Linux发布版,而不是自己选择每一样组件或自行设燃碧置。以后借助于Internet网络,并通过全世界各地计算机爱好者的共同努力,已成为今天世界上使用最多的一种UNIX类操作系统,并且使用人数还在迅猛增长。

『叁』 linux怎么批量修改文件名称

可以用脚本实现批量文件名称修改,以perl脚本为例:

注释:

1. # touch rename.perl //创建一个文件:rename.perl , 内容如下。

2. # chmod +x rename.perl

3. # cp rename.perl /bin/

4. # rename.perl 's/gongxu/leibie/g' * //将目录中所有文件名中的 gongxu 替换为 leibie。

#!/usr/bin/perl -w
# rename - Larry's filename fixer
#用法: Perl表达式 [要处理的文件名]
$op = shift or die "Usage: rename expr [files]\n";

#如果没有给出要处理的文件名则从标准输入读入
chomp(@ARGV = <STDIN>) unless @ARGV;

for (@ARGV) {
$was = $_;
eval $op; #对待处理的文件名($_)执行用户输入的Perl表达式$op
die $@ if $@; #退出 , 如果eval出错
rename($was,$_) unless $was eq $_;
}

rename脚本的经典实例示范:

% rename.perl 's/\.orig$//' *.orig #移除文件末尾的.orig

% rename.perl "tr/A-Z/a-z/ unless /^Make/" * #所有非Make打头的文件名大写转为小写

% rename.perl '$_ .= ".bad"' *.f #每个*.f文件后面追加一个.bad

% rename.perl 'print "$_: "; s/foo/bar/ if =~ /^y/i' * #回显每个待处理的文件名, 等待输入, 如果用户输入以y或Y打头, 把文件名中的foo替换成bar

% find /tmp -name "*~" -print | rename.perl 's/^(.+)~$/.#$1/' #把 /tmp目录里面每个文件名末尾有~的文件名改成以.#开头

『肆』 linux下怎么样重命名文件

linux下重命名文件有两种方式:

1.较简单的处理命令:mv

mv
原文件名
新文件名

如:mv myFile newName

将MyFile重命名为newName

2.linux提供了一个重命名文件命令:rename

如:rename
myFile
newName
myFile.text

将myFile.text重命名为newName.text

3.有时想要改变文件名的大小写,你可以使用下面的命令。

『伍』 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/bash

catsource_name.txt|whilereadLINE
do
ori_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

完成。

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

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

『陆』 linux 重命名大量文件

linux下重命名文件或文件夹、批量实现重命名文件方法
一、
linux下重命名文件或文件夹的命令mv既可以重命名,又可以移动文件或文件夹.
例子:将目录A重命名为B
mv A B
例子:将/a目录移动到/b下,并重命名为c
mv /a /b/c

其实在文本模式中要重命名文件或目录的话也是很简单的,我们只需要使用mv命令就可以了,比如说我们要将一个名为abc的文件重命名为1234就可以这样来写:mv abc 1234,但是要注意的是,如果当前目录下也有个1234的文件的话,我们的这个文件是会将它覆盖的。
二、
Linux批量重命名文件会涉及到改变一个字母、改变一些相连字母、改变某些位置的字母、在最前面加上某些字母、或者改变字母的大小写。完成这里五个方法基本上就会解决了Linux批量重
命名的工作。
1、我想把它们的名字的第一个1个字母变为"q",其它的不变
[root@pps 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
[root@pps mailqueue]# for i in `ls`; do mv -f $i `echo $i | sed 's/^...../zhaozh/'`; done
3、修改后面5个字母为snail
[root@pps mailqueue]# for i in `ls`; do mv -f $i `echo $i | sed 's/.....$/snail/'`; done
4、在前面添加 _hoho_
[root@pps mailqueue]# for i in `ls`; do mv -f $i `echo "_hoho_"$i`; done
5、所有的小写字母变大写字母
[root@pps mailqueue]# for i in `ls`; do mv -f $i `echo $i | tr a-z A-Z`; done
上面是五中完成有关Linux批量重命名方法。

『柒』 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
[root@localhost www]# rename 's/$/\.^abc/' /home/www/def #给www目录下的abc 更改为def 仅共参考。

『捌』 linux批量修改目录或者文件名

查看/home下所有子目录的ok.txt并修改成OK.txt

linux 批量重名名
Linux Shell 批量重命名的方法总览

1、删除所有的 .bak 后缀:

2、把 .jpe 文件后缀修改为 .jpg:

3、把所有文件的文件名改为小写:

4、将 abcd.jpg 重命名为 abcd_efg.jpg:

5、将 abcd_efg.jpg 重命名为 abcd_lmn.jpg:

6、把文件名中所有小写字母改为大写字母:

7、把格式 *_?.jpg 的文件改为 *_0?.jpg:

8、把文件名的前三个字母变为 vzomik:

9、把文件名的后四个字母变为 vzomik:

『玖』 Linux 下使用 shell 批量修改文件名的三种方法

1、通过sed替换

[root@node01 wolf]# find / -type f -name wolf.log

/wolf.log

/tmp/wolf.log

/root/wolf/wolf.log

[root@node01 wolf]# sed -i 's#wolf#yujing#g' find / -type f -name wolf.log

[root@node01 wolf]# find / -type f -name "wolf.log" | xargs cat

yujing

yujing

yujing

[root@node01 wolf]#

2、通过变量子串替换

vi laolang.log

wolf_20170806_1_wolf.jpg

wolf_20170806_2_wolf.jpg

wolf_20170806_3_wolf.jpg

wolf_20170806_4_wolf.jpg

wolf_20170806_5_wolf.jpg

wolf_20170806_6_wolf.jpg

wolf_20170806_7_wolf.jpg

wolf_20170806_8_wolf.jpg

wolf_20170806_9_wolf.jpg

wolf_20170806_10_wolf.jpg

[root@node01 data]# touch cat laolang.log |tr "\n" " "

[root@node01 data]# ll

total 8316

drwxr-xr-x 6 root root 4096 Jul 8 07:24 apache-maven-3.3.9

-rw-r--r-- 1 root root 8491533 Jul 8 07:23 apache-maven-3.3.9-bin.tar.gz

-rw-r--r-- 1 root root 0 Jul 29 14:16 cat

drwxr-xr-x 2 root root 4096 Jul 29 06:00 day1

drwxr-xr-x 2 root root 4096 Jul 29 11:50 day2

drwxr-xr-x 2 root root 4096 Jul 29 14:12 day3

-rw-r--r-- 1 root root 251 Jul 29 14:16 laolang.log

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_10_wolf.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_1_wolf.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_2_wolf.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_3_wolf.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_4_wolf.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_5_wolf.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_6_wolf.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_7_wolf.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_8_wolf.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_9_wolf.jpg

[root@node01 data]# f=wolf_20170806_10_wolf.jpg

[root@node01 data]# echo $f

wolf_20170806_10_wolf.jpg

[root@node01 data]# echo ${f%wolf*.jpg}

wolf_20170806_10_

[root@node01 data]# mv $f echo ${f%wolf*.jpg}.jpg

[root@node01 data]# ll

total 8316

drwxr-xr-x 6 root root 4096 Jul 8 07:24 apache-maven-3.3.9

-rw-r--r-- 1 root root 8491533 Jul 8 07:23 apache-maven-3.3.9-bin.tar.gz

-rw-r--r-- 1 root root 0 Jul 29 14:16 cat

drwxr-xr-x 2 root root 4096 Jul 29 06:00 day1

drwxr-xr-x 2 root root 4096 Jul 29 11:50 day2

drwxr-xr-x 2 root root 4096 Jul 29 14:12 day3

-rw-r--r-- 1 root root 251 Jul 29 14:16 laolang.log

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_10_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_1_wolf.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_2_wolf.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_3_wolf.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_4_wolf.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_5_wolf.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_6_wolf.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_7_wolf.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_8_wolf.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_9_wolf.jpg

[root@node01 data]# for f in ls *wolf.jpg ;do mv $f echo ${f%wolf*.jpg}.jpg;done

[root@node01 data]# ll

total 8316

drwxr-xr-x 6 root root 4096 Jul 8 07:24 apache-maven-3.3.9

-rw-r--r-- 1 root root 8491533 Jul 8 07:23 apache-maven-3.3.9-bin.tar.gz

-rw-r--r-- 1 root root 0 Jul 29 14:16 cat

drwxr-xr-x 2 root root 4096 Jul 29 06:00 day1

drwxr-xr-x 2 root root 4096 Jul 29 11:50 day2

drwxr-xr-x 2 root root 4096 Jul 29 14:12 day3

-rw-r--r-- 1 root root 251 Jul 29 14:16 laolang.log

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_10_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_1_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_2_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_3_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_4_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_5_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_6_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_7_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_8_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_9_.jpg

3、修改扩展名

把上面的jpg更换为log

[root@node01 data]# f=wolf_20170806_10_.jpg

[root@node01 data]# echo ${f/%jpg/log} 

wolf_20170806_10_.log

[root@node01 data]# mv $f ${f/%jpg/log}

[root@node01 data]# ls

apache-maven-3.3.9 day1 laolang.log wolf_20170806_2_.jpg wolf_20170806_5_.jpg wolf_20170806_8_.jpg

apache-maven-3.3.9-bin.tar.gz day2 wolf_20170806_10_.log wolf_20170806_3_.jpg wolf_20170806_6_.jpg wolf_20170806_9_.jpg

cat day3 wolf_20170806_1_.jpg wolf_20170806_4_.jpg wolf_20170806_7_.jpg

[root@node01 data]# ll

total 8316

drwxr-xr-x 6 root root 4096 Jul 8 07:24 apache-maven-3.3.9

-rw-r--r-- 1 root root 8491533 Jul 8 07:23 apache-maven-3.3.9-bin.tar.gz

-rw-r--r-- 1 root root 0 Jul 29 14:16 cat

drwxr-xr-x 2 root root 4096 Jul 29 06:00 day1

drwxr-xr-x 2 root root 4096 Jul 29 11:50 day2

drwxr-xr-x 2 root root 4096 Jul 29 14:12 day3

-rw-r--r-- 1 root root 251 Jul 29 14:16 laolang.log

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_10_.log

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_1_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_2_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_3_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_4_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_5_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_6_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_7_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_8_.jpg

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_9_.jpg

[root@node01 data]# for f in ls *.jpg ;do mv $f ${f/%jpg/log} ;done

[root@node01 data]# ll

total 8316

drwxr-xr-x 6 root root 4096 Jul 8 07:24 apache-maven-3.3.9

-rw-r--r-- 1 root root 8491533 Jul 8 07:23 apache-maven-3.3.9-bin.tar.gz

-rw-r--r-- 1 root root 0 Jul 29 14:16 cat

drwxr-xr-x 2 root root 4096 Jul 29 06:00 day1

drwxr-xr-x 2 root root 4096 Jul 29 11:50 day2

drwxr-xr-x 2 root root 4096 Jul 29 14:12 day3

-rw-r--r-- 1 root root 251 Jul 29 14:16 laolang.log

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_10_.log

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_1_.log

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_2_.log

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_3_.log

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_4_.log

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_5_.log

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_6_.log

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_7_.log

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_8_.log

-rw-r--r-- 1 root root 0 Jul 29 14:16 wolf_20170806_9_.log

以上就是本次分享的全部内容,现在想要学习的程序员欢迎关注六星社区,获取更多技能与教程

阅读全文

与批量文件改名linux相关的资料

热点内容
iphone备份路由器设置密码 浏览:175
自学考研学习网站哪个好 浏览:977
压缩exl文件中的图片 浏览:412
广州白云机场无线网络 浏览:968
小米三数据流量怎么打开 浏览:918
文件被锁定怎么办 浏览:600
下表由雇员数据库的训练数据组成 浏览:784
列表文件存储路径 浏览:540
qq游戏大厅自动出语音 浏览:598
编程只是兴趣怎么办 浏览:223
荣耀6plus电信版本 浏览:584
能打开word文件但桌面上找不到 浏览:366
2020十大网络红歌有哪些 浏览:843
手机系统空间文件夹在哪里设置快捷键 浏览:309
通信网络中的b8什么意思 浏览:715
桌面文件标题 浏览:228
优淘集市有什么app 浏览:747
找不到收藏文件 浏览:711
战狼2在什么网站 浏览:785
vb修改word 浏览:650

友情链接