有没有办法复制带有文件但没有内容的目录结构。我的意思是我想要与文件名完全相同的目录,但将它们留空/空。我有一些编程语言的示例应用程序,我想用我自己的风格重写它们,但保持它们在文件中的组织方式。
我将不胜感激任何帮助。
Ser*_*nyy 38
从 man cp
--attributes-only 不复制文件数据,只复制属性
因此,如果您想复制其中的所有文件夹和文件 somedirectory
做 cp -R --attributes-only somedirectory destinationdirectory
ale*_*xis 10
很高兴 Ubuntucp有这个功能,但是如果你发现自己在一台没有的机器上(cp例如,BSD 风格没有,所以 OS X 也没有),使用find. 这是一个两行(为了可读性):
% cd original_dir
% find . -type d -exec mkdir -p ../copy_dir/{} \;
% find . -type f -exec touch ../copy_dir/{} \;
Run Code Online (Sandbox Code Playgroud)
如果copy_dir已经存在,您可以跳过-p参数,mkdir因为find将自上而下遍历目录树。对于大型作业,您可以通过终止命令+而不是\;如果您find支持它(它可能支持)来减少大约一毫秒的时间。
编辑:上面的命令忽略了处理符号链接,可以用第三次运行复制find(不要用终止这个+):
% find . -type l -exec cp -R {} ../copy_dir/{} \;
Run Code Online (Sandbox Code Playgroud)