Linux下批量修改后缀名

Posted 厚积薄发

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux下批量修改后缀名相关的知识,希望对你有一定的参考价值。

1、用find和xargs添加后缀名

[[email protected] yum.repos.d]# ls -ltr
total 32
-rw-r--r--. 1 root root 5701 Nov 23 21:16 CentOS-Vault.repo
-rw-r--r--. 1 root root 1331 Nov 23 21:16 CentOS-Sources.repo
-rw-r--r--. 1 root root  630 Nov 23 21:16 CentOS-Media.repo
-rw-r--r--. 1 root root  314 Nov 23 21:16 CentOS-fasttrack.repo
-rw-r--r--. 1 root root  649 Nov 23 21:16 CentOS-Debuginfo.repo
-rw-r--r--. 1 root root 1309 Nov 23 21:16 CentOS-CR.repo
-rw-r--r--. 1 root root 1664 Nov 23 21:16 CentOS-Base.repo[[email protected] yum.repos.d]#  find . -type f |xargs -i mv {} {}.bak 
[[email protected] yum.repos.d]# ls -ltr
total 32
-rw-r--r--. 1 root root 5701 Nov 23 21:16 CentOS-Vault.repo.bak
-rw-r--r--. 1 root root 1331 Nov 23 21:16 CentOS-Sources.repo.bak
-rw-r--r--. 1 root root 630 Nov 23 21:16 CentOS-Media.repo.bak
-rw-r--r--. 1 root root 314 Nov 23 21:16 CentOS-fasttrack.repo.bak
-rw-r--r--. 1 root root 649 Nov 23 21:16 CentOS-Debuginfo.repo.bak
-rw-r--r--. 1 root root 1309 Nov 23 21:16 CentOS-CR.repo.bak
-rw-r--r--. 1 root root 1664 Nov 23 21:16 CentOS-Base.repo.bak

 2、用for、sed和mv修改后缀名

#.bak 替换为 .back
 
for i in $(ls .)
 
do
 
mv $i $(echo $i|sed ‘s/.bak/.back/‘)
 
done
[[email protected] yum.repos.d]# for i in $(ls .)
> do
> mv $i $(echo $i|sed ‘s/.bak/.back/‘)
> done
[[email protected] yum.repos.d]# ls -ltrr
total 32
-rw-r--r--. 1 root root 5701 Nov 23 21:16 CentOS-Vault.repo.back
-rw-r--r--. 1 root root 1331 Nov 23 21:16 CentOS-Sources.repo.back
-rw-r--r--. 1 root root  630 Nov 23 21:16 CentOS-Media.repo.back
-rw-r--r--. 1 root root  314 Nov 23 21:16 CentOS-fasttrack.repo.back
-rw-r--r--. 1 root root  649 Nov 23 21:16 CentOS-Debuginfo.repo.back
-rw-r--r--. 1 root root 1309 Nov 23 21:16 CentOS-CR.repo.back
-rw-r--r--. 1 root root 1664 Nov 23 21:16 CentOS-Base.repo.back
[[email protected] yum.repos.d]#

3、用rename命令修改后缀名   

rename back bak *.back
 
#把*.back改为*.bak
 
[[email protected]de99 yum.repos.d]# rename back bak *.back
[[email protected] yum.repos.d]# ll
total 32
-rw-r--r--. 1 root root 1664 Nov 23 21:16 CentOS-Base.repo.bak
-rw-r--r--. 1 root root 1309 Nov 23 21:16 CentOS-CR.repo.bak
-rw-r--r--. 1 root root  649 Nov 23 21:16 CentOS-Debuginfo.repo.bak
-rw-r--r--. 1 root root  314 Nov 23 21:16 CentOS-fasttrack.repo.bak
-rw-r--r--. 1 root root  630 Nov 23 21:16 CentOS-Media.repo.bak
-rw-r--r--. 1 root root 1331 Nov 23 21:16 CentOS-Sources.repo.bak
-rw-r--r--. 1 root root 5701 Nov 23 21:16 CentOS-Vault.repo.bak

 

以上是关于Linux下批量修改后缀名的主要内容,如果未能解决你的问题,请参考以下文章

linux批量修改文件后缀名

如何在DOS下批量改后缀名

谁知道在linux下的常用后缀名啊?

如何穿透多个文件夹批量修改文件后缀名?

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

Linux批量更改文件后缀名