下面的目录结构可能非常简单:
/home/user/app-data/Unique container ID/path/to/files我试过:
cp -r /home/user/app-data/*/path/to/files /storage/location显然,这会抓取我想要的所有文件,这些文件位于目标位置的最末端。我希望将每个唯一目录结构中的最后一个文件夹复制到一个保存位置,并从唯一ID开始维护目录结构。因此,我抓取的每个文件夹的最终存储产品如下所示:
/storage/location/Unique ID grabbed by the wildcard/path/to/files发布于 2021-03-18 06:31:52
cp复制源的叶(路径的最后一部分),在您的示例中,*匹配一个或多个叶对象。即使-r将递归地复制目录,最好还是使用-a来保留所有属性。
cp -r /home/user/app-data/* /storage/location如果您需要更高级的筛选器选项,则可以结合使用find和cpio。
在本例中,我们只复制目录结构:
find /home/user/app-data \
-type d -links 2 -printf %P\\0 | \
cpio -0 -pvdmu -D /home/user/app-data -- /storage/location(事实上,一个没有子目录的目录只有两个硬链接.,..,我们可以使用-links 2获取所有的最终目录,无论如何构造过滤器,最重要的是find和cpio具有相同的起点)。
https://askubuntu.com/questions/1324271
复制相似问题