加入收藏 | 设为首页 | 会员中心 | 我要投稿 PHP编程网 - 黄冈站长网 (http://www.0713zz.com/)- 数据应用、建站、人体识别、智能机器人、语音技术!
当前位置: 首页 > 服务器 > 搭建环境 > Linux > 正文

linux重命名文件能否实现

发布时间:2023-06-21 10:00:43 所属栏目:Linux 来源:互联网
导读:   给大家分享一下linux重命名文件如何实现的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获
  给大家分享一下linux重命名文件如何实现的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。
 
  linux重命名文件的方法:1、打开终端命令窗口;2、执行“mv A B”命令将目录A重命名为B,或者通过执行命令如“mv abc 1234”重命名指定文件;3、使用另一个“rename”命令实现重命名即可。
 
  在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]# sl
 
  total 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]# sl
 
  total 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]# sl
 
  total 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]# sl
 
  total 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不就完了吗?
 
  是的,上述办法可以说是一种思路,其实有很多种思路。
 

(编辑:PHP编程网 - 黄冈站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!