登录
首页 >  文章 >  linux

Linux复制目录结构命令详解

时间:2025-12-05 08:42:02 476浏览 收藏

推广推荐
免费电影APP ➜
支持 PC / 移动端,安全直达

在文章实战开发的过程中,我们经常会遇到一些这样那样的问题,然后要卡好半天,等问题解决了才发现原来一些细节知识点还是没有掌握好。今天golang学习网就整理分享《LINUX复制目录结构命令教程》,聊聊,希望可以帮助到正在努力赚钱的你。

使用find与mkdir组合可高效复制目录结构,命令为find /path/to/source -type d -exec mkdir -p /path/to/destination/{} \;,保留完整层级。2. rsync通过rsync -av --include='/' --exclude='' /source/ /destination/实现仅复制目录结构,适合远程同步与增量更新。3. 结合find、sed与mkdir可去除源路径前缀,如find /home/user/data -type d | sed 's|^/home/user/data||' | xargs -I {} mkdir -p /tmp/struct{},仅复制子目录结构。4. 操作前可用find /source -type d | sed 's|/source|/dest|'预览路径,确保正确性。根据是否保留路径前缀、自动化需求等选择合适方法,注意路径斜杠避免结构错位。

LINUX怎么只复制文件夹结构不复制文件_LINUX复制目录结构命令教程

在Linux中,只复制文件夹结构而不复制文件内容,可以通过findcpmkdir等命令组合实现。下面介绍几种常用方法,帮助你快速复制目录结构。

使用 find 和 mkdir 复制目录结构

这是最常见且高效的方法。利用find查找所有目录,再用mkdir创建对应结构。

示例命令:
find /path/to/source -type d -exec mkdir -p /path/to/destination/{} \;

说明:

  • /path/to/source 是源目录路径
  • -type d 表示只匹配目录
  • -exec mkdir -p 对每个找到的目录执行创建操作
  • /path/to/destination 是目标根路径

注意:此命令会保留从源路径开始的完整层级。如果只想复制子目录结构,可结合cd和相对路径处理。

使用 rsync 只复制目录结构

rsync 也可以实现该功能,通过过滤规则跳过文件。

示例命令:
rsync -av --include='*/' --exclude='*' /source/ /destination/

参数解释:

  • -a:归档模式,保留权限、时间等属性
  • -v:显示详细过程
  • --include='*/':包含所有目录
  • --exclude='*':排除所有文件

这种方法适合远程同步场景,也支持增量更新。

使用 find + sed + mkdir(去除前缀路径)

如果你不希望目标路径包含源路径的前缀,可以配合sed处理路径。

示例:
find /home/user/data -type d | sed 's|^/home/user/data||' | xargs -I {} mkdir -p /tmp/struct{}

这条命令将/home/user/data下的目录结构复制到/tmp/struct中,只保留子目录层级。

小技巧:测试命令效果

在执行前,建议先预览要创建的目录:

find /source -type d | sed 's|/source|/dest|'

确认路径正确后再执行实际创建操作,避免出错。

基本上就这些常用方法。根据你的具体需求选择合适的方式,比如是否保留绝对路径、是否用于脚本自动化等。操作时注意路径结尾斜杠的影响,避免结构错位。

今天带大家了解了的相关知识,希望对你有所帮助;关于文章的技术知识我们会一点点深入介绍,欢迎大家关注golang学习网公众号,一起学习编程~

相关阅读
更多>
最新阅读
更多>
课程推荐
更多>