程序 mv 等到最后才删除文件。为什么?关于这个还能做什么?

程序 mv 等到最后才删除文件。为什么?关于这个还能做什么?

我正在使用 mv 将一个大文件夹从一个硬盘驱动器移动到另一个硬盘驱动器,我注意到它会等到最后才删除已成功移动的文件。是否有一个原因?有没有办法让它删除文件,或者是否有不同的程序可以做到这一点?

等到最后的问题是,如果 mv 异常中止,将需要更长的时间才能恢复移动,因为目标目录中的每个文件都需要被覆盖或与源目录中的文件进行比较。此外,如果在成功复制后删除每个文件,则在移动时会释放空间,这对于紧急情况非常重要,如果一个硬盘驱动器即将耗尽空间并且程序将尝试使用比可用空间更多的空间并且您有可用的闪存驱动器或另一个硬盘驱动器,以防止已运行的程序失败。

我使用的命令是这样的:

mv -v -t /dst /src/folder

答案1

这是预期的行为。mv在移动完成之前不应删除您要求其移动的任何内容。

请注意,您正在移动目录所以 mv 等待直到目录末尾。例如,如果mv被告知删除文件/目录列表,它将等待每个文件/目录被复制。

我认为你对此无能为力(与mv)。

相关内容