文件与目录 / 命令文档

Linux mv命令

$ mv 12 个章节 Linux 命令详解

概述

文件移动与重命名的艺术

命令概述

mv (move) 是Linux系统中最常用的文件操作命令之一,主要用于移动文件/目录和重命名文件/目录。在日常运维工作中,mv命令是不可或缺的工具,我们必须掌握它!

mv [选项] 源文件 目标文件

常用选项参数

交互式模式-i 覆盖文件前进行确认提示
强制模式-f 强制覆盖,不进行任何提示
不覆盖-n 不覆盖已存在的文件
详细模式-v 显示详细的移动过程信息
备份模式-b 覆盖前创建备份文件
更新模式-u 仅当源文件较新时才移动

文件重命名

# 将 oldfile.txt 重命名为 newfile.txt
                    
                    mv oldfile.txt newfile.txt

移动文件到目录

# 将 newfile.txt 移动到 /root/Dir_D/ 目录
                    
                    mv newfile.txt /root/Dir_D/

移动多个文件

# 将所有 .txt 和 .log 文件移动到 backup 目录
                    
                    mv *.txt *.log /backup/

目录重命名

# 将目录重命名,Dir_D 命名为 Dir_D_new
                    
                    mv Dir_D Dir_D_new

安全移动(交互式)

# 如果目标文件存在,会提示是否覆盖
                    
                    mv -i source.txt target.txt

重要注意事项

数据安全警告 mv命令执行后原文件将不复存在!移动操作是不可逆的,请谨慎操作,特别是在生产环境中。
运维建议 在生产环境中建议使用 -i 参数进行交互式操作,或者先使用 cp 命令备份重要文件。
跨文件系统移动 当跨不同文件系统移动大文件时,mv实际上会执行复制+删除操作,可能需要较长时间。

批量重命名

for file in *.log; do
                      mv "$file" "${file%.log}.bak"
                    done
                    # 批量将 .log 文件重命名为 .bak

权限保护移动

sudo mv /etc/nginx/nginx.conf /etc/nginx/nginx.conf.backup
                    # 移动系统配置文件需要管理员权限

按时间戳移动

mv logfile.txt "logfile_$(date +%Y%m%d).txt"
                    # 按当前日期重命名日志文件

同分类 · 其他命令文档