使用 Linux cp -R 时文件和目录按什么顺序复制?

使用 Linux cp -R 时文件和目录按什么顺序复制?

如果我执行以下命令:

cp -R /myfiles /mydestination

如果myfiles包含多个子目录和文件,那么按照什么顺序复制它们?

例如,目录可能被命名为 0123a, 9993c, myfolder, xfolder

ls据我所知,它们不是按照字母顺序、日期顺序或使用标准命令时出现的顺序复制的,那么实际上是什么决定了顺序?

编辑:我试图确定 cp 命令使用的顺序,以确定我的复制命令在停止之前执行了多远。例如,我希望能够确定它成功复制了 4 个目录中的 3 个。

答案1

它们在文件系统中存储/返回的顺序。对于“未分类”的文件系统,这通常是它们的创建顺序。对于“已排序”的文件系统(例如带有 的 ext3/4 dir_index),这将是文件系统索引中使用的顺序。

答案2

我们遇到了完全相同的问题。我们将大量数据复制到 USB 驱动器或从 USB 驱动器复制,但无法知道该过程完成到什么程度,这很烦人。因此,我们开始使用 RSYNC。

而不是使用cp -Rv /source /destination

改用此rsync -av /source /destination

现在,您的所有文件夹及其内容都将按字母顺序处理,并且您可以轻松查看文件复制的进度。

我们有这个解决方案的完整描述,请访问我们的在线备份网站

版主请注意:我之前发过一次,但被删除了,可能是因为我的回答不够详细,或者是因为链接。也许你会接受这个更详细的答案。

相关内容