如何在 Linux 中复制目录树而不复制文件?

Kyl*_*est 20 linux rsync command-line-interface copy

我想将大约 200 个目录和子目录从一个位置复制到另一个位置,但我不想复制这些目录中的数千个文件。我在 Linux 上。

注意:我没有足够的空间来复制所有内容然后删除所有文件。

Kyl*_*est 27

刚刚发现这个:

rsync -a -f"+ */" -f"- *" source/ destination/
Run Code Online (Sandbox Code Playgroud)

http://psung.blogspot.com/2008/05/copying-directory-trees-with-rsync.html

  • 我更喜欢这种语法`rsync -a --include='*/' --exclude='*' ${source} ${destination}`。 (4认同)

Ign*_*ams 9

find some/dir -type d -print0 | rsync --files-from=/dev/stdin -0 ...
Run Code Online (Sandbox Code Playgroud)


小智 6

另一种方法是使用findmkdir

find SOURCE -type d -exec mkdir TARGET/{} \;
Run Code Online (Sandbox Code Playgroud)

只要确保 TARGET 已经存在或使用 mkdir 的 -p 选项。