CentOS实战,如何快速移动一个目录下的所有子文件夹

XMSDN
在CentOS实战中,若需快速移动目录下的所有子文件夹,推荐使用mv命令结合通配符,例如执行mv 源目录/* 目标目录/mv 源目录/[a-z]* 目标目录/,即可批量转移所有子文件夹,此方法操作简单,能显著提高文件管理的效率,避免逐个移动的繁琐。

在 CentOS 系统管理中,经常需要对文件结构进行整理,你可能有一个名为 source_dir 的目录,里面包含多个子文件夹(如 folder1, folder2 等),现在你需要将这些子文件夹一次性移动到另一个目标目录 target_dir 中。

以下是几种常用且高效的方法来实现“移动一个文件夹的所有文件夹”的操作。

场景假设

为了方便演示,假设:

CentOS实战,如何快速移动一个目录下的所有子文件夹

  • 源目录/data/source
  • 目标目录/data/backup

假设 /data/source 下有 folder1folder2 两个子文件夹。


使用 mv 命令(最常用)

这是最直接的方法,利用通配符 来匹配源目录下的所有内容。

命令:

mv /data/source/* /data/backup/

原理解析:

  • 代表匹配所有文件和文件夹。
  • 该命令会将 /data/source 下的所有内容(包括子文件夹和文件)移动到 /data/backup 中。

注意: 使用 mv 后,原目录 /data/source 中的内容将被清空,如果目标目录 /data/backup 不存在,系统会尝试将 /data/source 重命名为 /data/backup


使用 rsync 命令(推荐,更安全)

如果你担心源目录中的内容在移动过程中出错,或者你想在移动后保留源目录的空壳,rsync 是更好的选择,它支持递归复制并保留权限和属性。

命令:

rsync -av --progress /data/source/ /data/backup/

参数说明:

  • -a (archive):归档模式,递归传输并保持文件属性。
  • -v (verbose):显示传输过程。
  • --progress:显示进度条。

原理解析: rsync 会将 /data/source 下的内容复制到 /data/backup如果你只想复制内容而不删除源目录,这是最佳选择,如果你移动完成后手动删除源目录,效果等同于 mv


使用 find 命令(特定场景)

如果你只想移动**子文件夹

💡 温馨提示

📌 阅读须知 Rules & Notice

本站坚持免费分享,致力于为大家提供实用、优质的内容与资源。

🔗欢迎大家收藏与转发,转载请保留本站链接,请勿私自去除版权信息。

📚所有外部整理资源,仅作学习交流使用,请勿用于各类商业用途。

🤝网络相聚本是缘分,希望大家文明交流,理性浏览。

🛠️若发现内容有误或涉及侵权,我们将第一时间处理整改。

💖 感谢每一位朋友的陪伴与支持

✨ 用心分享,一路同行 ✨

目录[+]