使用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中,只复制文件夹结构而不复制文件内容,可以通过find、cp、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 -av --include='*/' --exclude='*' /source/ /destination/
参数解释:
-a:归档模式,保留权限、时间等属性-v:显示详细过程--include='*/':包含所有目录--exclude='*':排除所有文件这种方法适合远程同步场景,也支持增量更新。
如果你不希望目标路径包含源路径的前缀,可以配合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|'
确认路径正确后再执行实际创建操作,避免出错。
基本上就这些常用方法。根据你的具体需求选择合适的方式,比如是否保留绝对路径、是否用于脚本自动化等。操作时注意路径结尾斜杠的影响,避免结构错位。
以上就是LINUX怎么只复制文件夹结构不复制文件_LINUX复制目录结构命令教程的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号