在Linux中批量修改文件后缀通常可以使用rename
命令或者find
结合mv
命令来实现。
一、使用rename命令
rename
命令主要用于批量重命名文件。不同的Linux发行版中的rename
命令可能有一些细微差别,但基本功能相似。.txt
文件的后缀修改为.md
:rename
(在很多现代Linux系统中默认安装),可以使用以下命令:rename 's/\.txt$/.md/' *.txt
s/\.txt$/.md/
表示将文件名中以.txt
结尾的部分替换为.md
。优势是语法简洁,对于简单的基于模式的批量重命名操作非常方便。rename
命令(基于util - rename
),语法有所不同:rename .txt .md *.txt
.log
转换为.txt
以便于统一处理,或者将图片文件从一种格式批量转换为另一种格式(如果存在相应的转换逻辑结合到命令中)。二、使用find和mv命令
find
命令用于在指定目录下查找符合条件的文件或目录。mv
命令用于移动文件或者重命名文件。/home/user/documents
目录下所有.txt
文件后缀改为.md
:find /home/user/documents -type f -name "*.txt" -exec sh -c 'mv "$0" "${0%.txt}.md"' {} \;
find
命令查找指定目录下类型为文件(-type f
)且文件名以.txt
结尾(-name "*.txt"
)的文件。然后对于每个找到的文件({}
),执行sh -c
中的命令。${0%.txt}.md
表示将找到的文件名($0
)中的.txt
去掉并添加.md
。这种方法的优点是更加灵活,可以结合更多的条件判断和处理逻辑。领取专属 10元无门槛券
手把手带您无忧上云