find命令与rename批量修改文件名后缀

发布时间:2020-12-05编辑:脚本学堂
本文介绍了find命令与rename命令结合批量修改文件名后缀的方法,linux系统中的rename命令,需要的朋友参考下。

linux系统中修改文件或目录名,我们习惯使用mv命令来完成,那么你是否尝试过用rename批量修改文件名后缀呢?即用rename修改文件扩展名呢?变或结合shell 脚本一起来完成呢?

本节脚本学堂小编为大家带来find命令与rename批量修改文件名后缀的方法,一起来看看吧。

曾经遇到这样的问题:
查找/tmp下以.sh为后缀的文件并将所有这些文件修改为.bash后缀。

一个命令可以实现:
 

# rename .sh .bash *.sh

将当前目录下的所有.sh文件修改为.bash做后缀。

以上用到了linux系统中的rename命令,首先要确保这个命令所在的软件包安装了:
 

[root@jb200.com mydir]$ rpm -qif `which rename`
Name        : util-linux                  Relocations: (not relocatable)
Version    : 2.13                              Vendor: Red Hat, Inc.
Release    : 0.52.el5_4.1                  Build Date: Thu 07 Jan 2010 06:25:25 PM CST
Install Date: Thu 02 Feb 2012 06:49:04 PM CST      Build Host: x86-007.build.bos.redhat.com
Group      : System Environment/Base      Source RPM: util-linux-2.13-0.52.el5_4.1.src.rpm
Size        : 4706614                          License: distributable
Signature  : DSA/SHA1, Wed 13 Jan 2010 05:19:06 PM CST, Key ID 5326810137017186
Packager    : Red Hat, Inc. <http://bugzilla.redhat.com/bugzilla>
Summary    : A collection of basic system utilities.
Description :
The util-linux package contains a large variety of low-level system
utilities that are necessary for a Linux system to function. Among
others, Util-linux contains the fdisk configuration tool and the login
program.

结合find命令更方便:
 

# find /tmp -name "*.sh" -exec rename .sh .bash {} ;