在Linux下重命名文件或目录,能够使用mv命令或rename命令,这里分享下两者的使用方法。linux
mv命令既能够重命名,又能够移动文件或文件夹。spa
例如,将目录A重命名为B:字符串
mv A Bio
例如,将/A目录移动到/B下,并重命名为C:date
mv /A /B/Cfile
其实在文本模式中要重命名文件或目录,只须要使用mv命令就能够了;方法
好比说要将一个名为abc的文件重命名为1234:命名
mv abc 1234touch
注意,若是当前目录下也有个1234的文件的话,这个文件是会将它覆盖的。分享
Linux系统中另外一个重命名命令 rename命令的用法,用来批量建立那些规格差很少的文件名。
使用语句:
[root@LeeCookiesECS ~]# for i in `seq -w 10`
> do touch stu\_$i\_linux.jpg
> done
此时查看列表,返回的值为:
[root@LeeCookiesECS ~]# ll
total 43452
drwxr-xr-x 16 501 501 4096 Mar 28 18:24 Python-3.6.5
-rw-r--r-- 1 root root 22994617 Mar 28 18:24 Python-3.6.5.tgz
-rw-r--r-- 1 root root 0 Apr 20 10:23 stu_01_linux.jpg
-rw-r--r-- 1 root root 0 Apr 20 10:23 stu_02_linux.jpg
-rw-r--r-- 1 root root 0 Apr 20 10:23 stu_03_linux.jpg
-rw-r--r-- 1 root root 0 Apr 20 10:23 stu_04_linux.jpg
-rw-r--r-- 1 root root 0 Apr 20 10:23 stu_05_linux.jpg
-rw-r--r-- 1 root root 0 Apr 20 10:23 stu_06_linux.jpg
-rw-r--r-- 1 root root 0 Apr 20 10:23 stu_07_linux.jpg
-rw-r--r-- 1 root root 0 Apr 20 10:23 stu_08_linux.jpg
-rw-r--r-- 1 root root 0 Apr 20 10:23 stu_09_linux.jpg
-rw-r--r-- 1 root root 0 Apr 20 10:23 stu_10_linux.jpg
-rw-r--r-- 1 root root 21485301 Apr 19 17:26 train_list.txt
-rw-r--r-- 1 root root 103 Apr 19 17:00 update.txt
输入:
[root@LeeCookiesECS ~]# rename \_linux ' ' *.jpg
[root@LeeCookiesECS ~]# ll
total 43452
drwxr-xr-x 16 501 501 4096 Mar 28 18:24 Python-3.6.5
-rw-r--r-- 1 root root 22994617 Mar 28 18:24 Python-3.6.5.tgz
-rw-r--r-- 1 root root 0 Apr 20 10:23 stu_01.jpg
-rw-r--r-- 1 root root 0 Apr 20 10:23 stu_02.jpg
-rw-r--r-- 1 root root 0 Apr 20 10:23 stu_03.jpg
-rw-r--r-- 1 root root 0 Apr 20 10:23 stu_04.jpg
-rw-r--r-- 1 root root 0 Apr 20 10:23 stu_05.jpg
-rw-r--r-- 1 root root 0 Apr 20 10:23 stu_06.jpg
-rw-r--r-- 1 root root 0 Apr 20 10:23 stu_07.jpg
-rw-r--r-- 1 root root 0 Apr 20 10:23 stu_08.jpg
-rw-r--r-- 1 root root 0 Apr 20 10:23 stu_09.jpg
-rw-r--r-- 1 root root 0 Apr 20 10:23 stu_10.jpg
-rw-r--r-- 1 root root 21485301 Apr 19 17:26 train_list.txt
-rw-r--r-- 1 root root 103 Apr 19 17:00 update.txt
rename的参数:
原字符串:将文件名须要替换的字符串; 目标字符串:将文件名中含有的原字符替换成目标字符串; 文件:指定要改变文件名的文件列表。
例如,将train.txt重命名为Train.txt使用的命令为:
[root@LeeCookiesECS ~]# rename train.txt Train.txt train.txt
在rename中,? 可替代单个字符 * 可替代多个字符,[charset] 可替代charset集中的任意单个字符
在列表中,有:
[root@LeeCookiesECS ~]# ll
total 43452
drwxr-xr-x 16 501 501 4096 Mar 28 18:24 Python-3.6.5
-rw-r--r-- 1 root root 22994617 Mar 28 18:24 Python-3.6.5.tgz
-rw-r--r-- 1 root root 0 Apr 20 10:23 studio_01.jpg
-rw-r--r-- 1 root root 0 Apr 20 10:23 studio_02.jpg
-rw-r--r-- 1 root root 0 Apr 20 10:23 studio_03.jpg
-rw-r--r-- 1 root root 0 Apr 20 10:23 studio_04.jpg
-rw-r--r-- 1 root root 0 Apr 20 10:23 studio_05.jpg
-rw-r--r-- 1 root root 0 Apr 20 10:23 studio_06.jpg
-rw-r--r-- 1 root root 0 Apr 20 10:23 studio_07.jpg
-rw-r--r-- 1 root root 0 Apr 20 10:23 studio_08.jpg
-rw-r--r-- 1 root root 0 Apr 20 10:23 studio_09.jpg
-rw-r--r-- 1 root root 0 Apr 20 10:23 studio_10.jpg
-rw-r--r-- 1 root root 21485301 Apr 19 17:26 Train.txt
-rw-r--r-- 1 root root 103 Apr 19 17:00 update.txt
批量重命名:
rename studio Std stu*_*.*
查看输出结果:
[root@LeeCookiesECS ~]# ll
total 43452
drwxr-xr-x 16 501 501 4096 Mar 28 18:24 Python-3.6.5
-rw-r--r-- 1 root root 22994617 Mar 28 18:24 Python-3.6.5.tgz
-rw-r--r-- 1 root root 0 Apr 20 10:23 Std_02.jpg
-rw-r--r-- 1 root root 0 Apr 20 10:23 Std_03.jpg
-rw-r--r-- 1 root root 0 Apr 20 10:23 Std_04.jpg
-rw-r--r-- 1 root root 0 Apr 20 10:23 Std_05.jpg
-rw-r--r-- 1 root root 0 Apr 20 10:23 Std_06.jpg
-rw-r--r-- 1 root root 0 Apr 20 10:23 Std_07.jpg
-rw-r--r-- 1 root root 0 Apr 20 10:23 Std_08.jpg
-rw-r--r-- 1 root root 0 Apr 20 10:23 Std_09.jpg
-rw-r--r-- 1 root root 0 Apr 20 10:23 Std_10.jpg
-rw-r--r-- 1 root root 21485301 Apr 19 17:26 Train.txt
-rw-r--r-- 1 root root 103 Apr 19 17:00 update.txt
通配符的使用的话,只支持将通配符使用在选择文件中;
给全部的名字添加一个标题,例如:
rename '' \_linux *.png
这样的话,在每一个文件的名字以前都会有_linux
_linux,在已有的名字以前添加前缀,使用:
[root@LeeCookiesECS ~]# rename '' _Linux_ *.png
[root@LeeCookiesECS ~]# ll
total 43452
-rw-r--r-- 1 root root 0 Apr 20 10:23 _Linux__linux_Std_02.png
-rw-r--r-- 1 root root 0 Apr 20 10:23 _Linux__linux_Std_03.png
-rw-r--r-- 1 root root 0 Apr 20 10:23 _Linux__linux_Std_04.png
-rw-r--r-- 1 root root 0 Apr 20 10:23 _Linux__linux_Std_05.png
-rw-r--r-- 1 root root 0 Apr 20 10:23 _Linux__linux_Std_06.png
-rw-r--r-- 1 root root 0 Apr 20 10:23 _Linux__linux_Std_07.png
-rw-r--r-- 1 root root 0 Apr 20 10:23 _Linux__linux_Std_08.png
-rw-r--r-- 1 root root 0 Apr 20 10:23 _Linux__linux_Std_09.png
-rw-r--r-- 1 root root 0 Apr 20 10:23 _Linux__linux_Std_10.png
drwxr-xr-x 16 501 501 4096 Mar 28 18:24 Python-3.6.5
-rw-r--r-- 1 root root 22994617 Mar 28 18:24 Python-3.6.5.tgz
-rw-r--r-- 1 root root 21485301 Apr 19 17:26 Train.txt
-rw-r--r-- 1 root root 103 Apr 19 17:00 update.txt
字母的替换
例如:
将小写字母替换成大写字母:
[root@LeeCookiesECS ~]# ll
total 43452
-rw-r--r-- 1 root root 0 Apr 20 10:23 _Linux_Std_02.png
-rw-r--r-- 1 root root 0 Apr 20 10:23 _Linux_Std_03.png
-rw-r--r-- 1 root root 0 Apr 20 10:23 _Linux_Std_04.png
-rw-r--r-- 1 root root 0 Apr 20 10:23 _Linux_Std_05.png
-rw-r--r-- 1 root root 0 Apr 20 10:23 _Linux_Std_06.png
-rw-r--r-- 1 root root 0 Apr 20 10:23 _Linux_Std_07.png
-rw-r--r-- 1 root root 0 Apr 20 10:23 _Linux_Std_08.png
-rw-r--r-- 1 root root 0 Apr 20 10:23 _Linux_Std_09.png
-rw-r--r-- 1 root root 0 Apr 20 10:23 _Linux_Std_10.png
drwxr-xr-x 16 501 501 4096 Mar 28 18:24 Python-3.6.5
-rw-r--r-- 1 root root 22994617 Mar 28 18:24 Python-3.6.5.tgz
-rw-r--r-- 1 root root 21485301 Apr 19 17:26 Train.txt
-rw-r--r-- 1 root root 103 Apr 19 17:00 update.txt
[root@LeeCookiesECS ~]# rename _Std_ _STD_ *_Std_*.png
[root@LeeCookiesECS ~]# ll
total 43452
-rw-r--r-- 1 root root 0 Apr 20 10:23 _Linux_STD_02.png
-rw-r--r-- 1 root root 0 Apr 20 10:23 _Linux_STD_03.png
-rw-r--r-- 1 root root 0 Apr 20 10:23 _Linux_STD_04.png
-rw-r--r-- 1 root root 0 Apr 20 10:23 _Linux_STD_05.png
-rw-r--r-- 1 root root 0 Apr 20 10:23 _Linux_STD_06.png
-rw-r--r-- 1 root root 0 Apr 20 10:23 _Linux_STD_07.png
-rw-r--r-- 1 root root 0 Apr 20 10:23 _Linux_STD_08.png
-rw-r--r-- 1 root root 0 Apr 20 10:23 _Linux_STD_09.png
-rw-r--r-- 1 root root 0 Apr 20 10:23 _Linux_STD_10.png
drwxr-xr-x 16 501 501 4096 Mar 28 18:24 Python-3.6.5
-rw-r--r-- 1 root root 22994617 Mar 28 18:24 Python-3.6.5.tgz
-rw-r--r-- 1 root root 21485301 Apr 19 17:26 Train.txt
-rw-r--r-- 1 root root 103 Apr 19 17:00 update.txt修改文件的后缀[root@LeeCookiesECS ~]# rename .jpg .png *.jpg[root@LeeCookiesECS ~]# lltotal 0-rw-r--r-- 1 root root 0 Apr 20 12:55 stu_01_linux.png-rw-r--r-- 1 root root 0 Apr 20 12:55 stu_02_linux.png-rw-r--r-- 1 root root 0 Apr 20 12:55 stu_03_linux.png-rw-r--r-- 1 root root 0 Apr 20 12:55 stu_04_linux.png-rw-r--r-- 1 root root 0 Apr 20 12:55 stu_05_linux.png-rw-r--r-- 1 root root 0 Apr 20 12:55 stu_06_linux.png-rw-r--r-- 1 root root 0 Apr 20 12:55 stu_07_linux.png-rw-r--r-- 1 root root 0 Apr 20 12:55 stu_08_linux.png-rw-r--r-- 1 root root 0 Apr 20 12:55 stu_09_linux.png-rw-r--r-- 1 root root 0 Apr 20 12:55 stu_10_linux.png修改文件名后缀,就至关因而修改文件的字节;批量添加文件的后缀首先,咱们先将文件的后缀去掉:[root@LeeCookiesECS ~]# rename .png '' *.png[root@LeeCookiesECS ~]# lltotal 43452-rw-r--r-- 1 root root 0 Apr 20 10:23 _Linux_STD_02-rw-r--r-- 1 root root 0 Apr 20 10:23 _Linux_STD_03-rw-r--r-- 1 root root 0 Apr 20 10:23 _Linux_STD_04-rw-r--r-- 1 root root 0 Apr 20 10:23 _Linux_STD_05-rw-r--r-- 1 root root 0 Apr 20 10:23 _Linux_STD_06-rw-r--r-- 1 root root 0 Apr 20 10:23 _Linux_STD_07-rw-r--r-- 1 root root 0 Apr 20 10:23 _Linux_STD_08-rw-r--r-- 1 root root 0 Apr 20 10:23 _Linux_STD_09-rw-r--r-- 1 root root 0 Apr 20 10:23 _Linux_STD_10drwxr-xr-x 16 501 501 4096 Mar 28 18:24 Python-3.6.5-rw-r--r-- 1 root root 22994617 Mar 28 18:24 Python-3.6.5.tgz-rw-r--r-- 1 root root 21485301 Apr 19 17:26 Train.txt-rw-r--r-- 1 root root 103 Apr 19 17:00 update.txt而后进行添加文件名的后缀:[root@LeeCookiesECS ~]# rename _linux _linux.png *_linux[root@LeeCookiesECS ~]# lltotal 0-rw-r--r-- 1 root root 0 Apr 20 12:55 stu_02_linux.png-rw-r--r-- 1 root root 0 Apr 20 12:55 stu_03_linux.png-rw-r--r-- 1 root root 0 Apr 20 12:55 stu_04_linux.png-rw-r--r-- 1 root root 0 Apr 20 12:55 stu_05_linux.png-rw-r--r-- 1 root root 0 Apr 20 12:55 stu_06_linux.png-rw-r--r-- 1 root root 0 Apr 20 12:55 stu_07_linux.png-rw-r--r-- 1 root root 0 Apr 20 12:55 stu_08_linux.png-rw-r--r-- 1 root root 0 Apr 20 12:55 stu_09_linux.png-rw-r--r-- 1 root root 0 Apr 20 12:55 stu_10_linux.png批量删除文件名[root@LeeCookiesECS ~]# lltotal 0-rw-r--r-- 1 root root 0 Apr 20 12:55 _linuxstu_02_linux.png-rw-r--r-- 1 root root 0 Apr 20 12:55 _linuxstu_03_linux.png-rw-r--r-- 1 root root 0 Apr 20 12:55 _linuxstu_04_linux.png-rw-r--r-- 1 root root 0 Apr 20 12:55 _linuxstu_05_linux.png-rw-r--r-- 1 root root 0 Apr 20 12:55 _linuxstu_06_linux.png-rw-r--r-- 1 root root 0 Apr 20 12:55 _linuxstu_07_linux.png-rw-r--r-- 1 root root 0 Apr 20 12:55 _linuxstu_08_linux.png-rw-r--r-- 1 root root 0 Apr 20 12:55 _linuxstu_09_linux.png-rw-r--r-- 1 root root 0 Apr 20 12:55 _linuxstu_10_linux.png[root@LeeCookiesECS ~]# rename _linux '' _linux*[root@LeeCookiesECS ~]# lltotal 0-rw-r--r-- 1 root root 0 Apr 20 12:55 stu_02_linux.png-rw-r--r-- 1 root root 0 Apr 20 12:55 stu_03_linux.png-rw-r--r-- 1 root root 0 Apr 20 12:55 stu_04_linux.png-rw-r--r-- 1 root root 0 Apr 20 12:55 stu_05_linux.png-rw-r--r-- 1 root root 0 Apr 20 12:55 stu_06_linux.png-rw-r--r-- 1 root root 0 Apr 20 12:55 stu_07_linux.png-rw-r--r-- 1 root root 0 Apr 20 12:55 stu_08_linux.png-rw-r--r-- 1 root root 0 Apr 20 12:55 stu_09_linux.png-rw-r--r-- 1 root root 0 Apr 20 12:55 stu_10_linux.png[root@LeeCookiesECS ~]# rename _linux '' _linux*rename: _linux*: rename to * failed: No such file or directory[root@LeeCookiesECS ~]# rename _linux '' *_linux*[root@LeeCookiesECS ~]# lltotal 0-rw-r--r-- 1 root root 0 Apr 20 12:55 stu_02.png-rw-r--r-- 1 root root 0 Apr 20 12:55 stu_03.png-rw-r--r-- 1 root root 0 Apr 20 12:55 stu_04.png-rw-r--r-- 1 root root 0 Apr 20 12:55 stu_05.png-rw-r--r-- 1 root root 0 Apr 20 12:55 stu_06.png-rw-r--r-- 1 root root 0 Apr 20 12:55 stu_07.png-rw-r--r-- 1 root root 0 Apr 20 12:55 stu_08.png-rw-r--r-- 1 root root 0 Apr 20 12:55 stu_09.png-rw-r--r-- 1 root root 0 Apr 20 12:55 stu_10.png