全球今热点:linux重命名文件怎么实现

时间:2023-01-03 12:16:36       来源:PHP中文网

本教程操作环境:linux5.9.8系统、Dell G3电脑。


(资料图片仅供参考)

linux重命名文件怎么实现?

Linux下重命名文件或文件夹

在Linux下重命名文件或目录,可以使用mv命令或rename命令,这里分享下二者的使用方法。

mv命令既可以重命名,又可以移动文件或文件夹。

例子:将目录A重命名为B

mv A B
登录后复制

例子:将/a目录移动到/b下,并重命名为c

mv /a /b/c
登录后复制

其实在文本模式中要重命名文件或目录,只需要使用mv命令就可以了,比如说要将一个名为abc的文件重命名为1234:

mv abc 1234
登录后复制

注意,如果当前目录下也有个1234的文件的话,这个文件是会将它覆盖的。

下面介绍Linux系统中另一个重命名命令 rename命令的用法。

批量创建那些规格差不多的文件名。【测试的第一步】

[root@linuxidc net]# for i in `seq -w 10`> do touch stu\_$i\_linux.jpg> done[root@linuxidc net]# sltotal 0-rw-r--r-- 1 root root 0 Oct 9 21:22 stu_01_linux.jpg-rw-r--r-- 1 root root 0 Oct 9 21:22 stu_02_linux.jpg-rw-r--r-- 1 root root 0 Oct 9 21:22 stu_03_linux.jpg-rw-r--r-- 1 root root 0 Oct 9 21:22 stu_04_linux.jpg-rw-r--r-- 1 root root 0 Oct 9 21:22 stu_05_linux.jpg-rw-r--r-- 1 root root 0 Oct 9 21:22 stu_06_linux.jpg-rw-r--r-- 1 root root 0 Oct 9 21:22 stu_07_linux.jpg-rw-r--r-- 1 root root 0 Oct 9 21:22 stu_08_linux.jpg-rw-r--r-- 1 root root 0 Oct 9 21:22 stu_09_linux.jpg-rw-r--r-- 1 root root 0 Oct 9 21:22 stu_10_linux.jpg
登录后复制

然后,使用rename进行修改

[root@linuxidc net]# rename \_linux "" *.jpg[root@linuxidc net]# sltotal 0-rw-r--r-- 1 root root 0 Oct 9 21:22 stu_01.jpg-rw-r--r-- 1 root root 0 Oct 9 21:22 stu_02.jpg-rw-r--r-- 1 root root 0 Oct 9 21:22 stu_03.jpg-rw-r--r-- 1 root root 0 Oct 9 21:22 stu_04.jpg-rw-r--r-- 1 root root 0 Oct 9 21:22 stu_05.jpg-rw-r--r-- 1 root root 0 Oct 9 21:22 stu_06.jpg-rw-r--r-- 1 root root 0 Oct 9 21:22 stu_07.jpg-rw-r--r-- 1 root root 0 Oct 9 21:22 stu_08.jpg-rw-r--r-- 1 root root 0 Oct 9 21:22 stu_09.jpg-rw-r--r-- 1 root root 0 Oct 9 21:22 stu_10.jpg
登录后复制

注意,如果想要替换掉下划线,那么你不能加任何引号。

创建一些测试文件:

[root@linuxidc net]# for i in `seq -w 10`; do touch stu\_$i\_linux.jpg; done[root@linuxidc net]# sltotal 0-rw-r--r-- 1 root root 0 Oct 9 21:58 stu_01_linux.jpg-rw-r--r-- 1 root root 0 Oct 9 21:58 stu_02_linux.jpg-rw-r--r-- 1 root root 0 Oct 9 21:58 stu_03_linux.jpg-rw-r--r-- 1 root root 0 Oct 9 21:58 stu_04_linux.jpg-rw-r--r-- 1 root root 0 Oct 9 21:58 stu_05_linux.jpg-rw-r--r-- 1 root root 0 Oct 9 21:58 stu_06_linux.jpg-rw-r--r-- 1 root root 0 Oct 9 21:58 stu_07_linux.jpg-rw-r--r-- 1 root root 0 Oct 9 21:58 stu_08_linux.jpg-rw-r--r-- 1 root root 0 Oct 9 21:58 stu_09_linux.jpg-rw-r--r-- 1 root root 0 Oct 9 21:58 stu_10_linux.jpg[root@linuxidc net]# rename "\_linux" "" *.jpg[root@linuxidc net]# sltotal 0-rw-r--r-- 1 root root 0 Oct 9 21:27 stu_01_linux.jpg-rw-r--r-- 1 root root 0 Oct 9 21:27 stu_02_linux.jpg-rw-r--r-- 1 root root 0 Oct 9 21:27 stu_03_linux.jpg-rw-r--r-- 1 root root 0 Oct 9 21:27 stu_04_linux.jpg-rw-r--r-- 1 root root 0 Oct 9 21:27 stu_05_linux.jpg-rw-r--r-- 1 root root 0 Oct 9 21:27 stu_06_linux.jpg-rw-r--r-- 1 root root 0 Oct 9 21:27 stu_07_linux.jpg-rw-r--r-- 1 root root 0 Oct 9 21:27 stu_08_linux.jpg-rw-r--r-- 1 root root 0 Oct 9 21:27 stu_09_linux.jpg-rw-r--r-- 1 root root 0 Oct 9 21:27 stu_10_linux.jpg
登录后复制

rename版本如果是perl版本的,那rename命令是支持正则的;因此在perl版本的rename下,执行上述命令就可以成功,如果rename版本是c版本的,那么上述命令是不成功的。

这个是版本支持的问题,所以不必深究。

之前的问题可能是因为他的rename版本不支持导致的。so,这里重点说的就是rename,虽然这个命令不是很重要。但是它其实还是很有用的,不是吗?

当然,有人会说,你这个都是在一个目录下,那我要是在不同的目录下呢?

用两个命令。一个find先把要修改的文件找出来,再接一个管道,一个rename不就完了吗?

是的,上述办法可以说是一种思路,其实有很多种思路。

推荐学习:《Linux视频教程》

以上就是linux重命名文件怎么实现的详细内容,更多请关注php中文网其它相关文章!

关键词: 相关文章 移动文件 使用方法