插件窝 干货文章 Linux下文件夹移动与复制的方法是什么

Linux下文件夹移动与复制的方法是什么

文件夹 复制 递归 目标 411    来源:    2025-04-22

在Linux系统中,移动和复制文件夹是常见的文件操作任务。以下是详细的方法说明:


1. 移动文件夹

命令:mv
功能:将文件夹从一个位置移动到另一个位置(可跨文件系统),也可用于重命名文件夹。

基本语法

mv [选项] 源文件夹路径 目标路径

常用选项

  • -i:交互模式(覆盖前提示确认)。
  • -v:显示详细操作过程。
  • -u:仅当源文件比目标文件新时移动。

示例

# 将文件夹 dir1 移动到 /home/user/documents/ 目录下
mv /path/to/dir1 /home/user/documents/

# 移动并重命名(将 dir1 移动到目标路径并更名为 dir2)
mv /path/to/dir1 /home/user/documents/dir2

# 交互式移动(覆盖前询问)
mv -i dir1 /backup/

注意事项

  • 如果目标路径已存在同名文件夹,mv会直接覆盖(除非使用 -i 选项)。
  • 跨文件系统移动相当于“复制+删除”,耗时较长。

2. 复制文件夹

命令:cp
功能:复制文件夹及其内容到新位置(需递归复制子目录和文件)。

基本语法

cp [选项] -r 源文件夹路径 目标路径

注意:必须使用 -r(或 -R/--recursive)选项递归复制文件夹。

常用选项

  • -r:递归复制文件夹及其内容。
  • -i:交互模式(覆盖前提示)。
  • -v:显示复制过程。
  • -u:仅复制比目标更新的文件。
  • -a:归档模式(保留权限、时间戳等,等同于 -rp)。

示例

# 复制 dir1 到 /backup/ 目录(包括子文件和子目录)
cp -r /path/to/dir1 /backup/

# 复制并保留原始属性(权限、时间戳等)
cp -a dir1 /backup/

# 交互式复制(避免覆盖重要文件)
cp -ri dir1 /backup/

注意事项

  • 如果目标路径已存在同名文件夹,cp 会将源文件夹复制到目标文件夹内(如 /backup/dir1)。
  • 复制大文件夹时,可用 rsync 命令实现增量复制(更高效)。

3. 高级工具:rsync

适用场景:需要增量备份、保留文件属性或网络传输时。

基本语法

rsync -av 源文件夹/ 目标路径/

选项说明: - -a:归档模式(保留权限、符号链接等)。 - -v:显示详细过程。 - -z:压缩传输(适用于网络)。 - --delete:同步删除目标中多余文件。

示例

# 本地复制文件夹(类似 cp -a)
rsync -av /path/to/dir1/ /backup/dir1/

# 远程同步到服务器
rsync -avz dir1/ user@remote:/backup/

总结对比

操作 命令 关键选项 特点
移动 mv 快速,但跨文件系统时较慢
复制 cp -r 必须递归复制
同步 rsync -a 适合大文件夹或远程备份

根据需求选择合适的命令即可!