在Linux系统中,重命名文件有多种方法,以下是常用的几种方式及其详细说明:
mv
命令(最常用)bash
mv [选项] 源文件 目标文件
bash
mv oldname.txt newname.txt # 重命名文件
mv dir1 dir2 # 重命名目录(dir2不存在时)
-i
:交互模式(覆盖前提示确认)。-n
:禁止覆盖已存在文件。-v
:显示操作详情。rename
命令(批量重命名)bash
rename 's/原字符串/新字符串/' 文件匹配模式
bash
rename 's/old/new/' *.txt # 将所有.txt文件的"old"替换为"new"
rename 'y/A-Z/a-z/' * # 将所有文件名转为小写
rename
可能不同(如CentOS默认使用简单版本),需确认版本:
bash
rename --version
mmv
命令(高级批量重命名)sudo apt install mmv
(Debian/Ubuntu)bash
mmv "原模式" "目标模式"
bash
mmv "*.old" "#1.new" # 将所有.old后缀改为.new
mmv "file_??.txt" "file_#1#2" # 删除文件名中的下划线
F2
)。.jpg
文件添加前缀bash
for file in *.jpg; do mv "$file" "prefix_$file"; done
find
+ mv
组合(递归操作).log
文件为.bak
bash
find /path -type f -name "*.log" -exec sh -c 'mv "$0" "${0%.log}.bak"' {} \;
mv
会直接覆盖(建议用-i
或-n
选项)。"my file.txt"
)。mv
rename
或 mmv
find
组合根据具体场景选择合适的方法即可!