欢迎来到徐庆高(Tea)的个人博客网站
磨难很爱我,一度将我连根拔起。从惊慌失措到心力交瘁,我孤身一人,但并不孤独无依。依赖那些依赖我的人,信任那些信任我的人,帮助那些给予我帮助的人。如果我愿意,可以分裂成无数面镜子,让他们看见我,就像看见自己。察言观色和模仿学习是我的领域。像每个深受创伤的人那样,最终,我学会了随遇而安。
当前位置: 日志文章 > 详细内容

Shell实现批量重命名文件的几种方法

2025年04月24日 Linux
在linux系统中,使用以下命令实现需求:1. 追加扩展名(保留原扩展名):find dt\=202* -type f -name 'par*' -exec mv -v -- {} {}.csv \;

在linux系统中,使用以下命令实现需求:

1. 追加扩展名(保留原扩展名):

find dt\=202* -type f -name 'par*' -exec mv -v -- {} {}.csv \;

示例效果:

par1.txt → par1.txt.csv

2. 替换扩展名(删除原扩展名):

find dt\=202* -type f -name 'par*' -exec sh -c 'mv -v -- "$1" "${1%.*}.csv"' _ {} \;

示例效果:​​​​​​​

par1.txt → par1.csv

注意事项:

  • dt\=202* 中的 \ 用于转义 = 符号,防止shell解析错误;

  • 命令中的 -type f 确保只处理文件;

  • -name 'par*' 匹配以 par 开头的文件名;

  • 使用 -exec 对每个匹配文件执行操作;

  • 建议先通过 echo 测试命令效果:

find dt\=202* -type f -name 'par*' -exec echo mv -- {} {}.csv \;

确认无误后移除 echo 执行实际修改。

总结

到此这篇关于shell实现批量重命名文件的几种方法的文章就介绍到这了,更多相关shell批量重命名文件内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!