我的 $ mv '*.mobi' 命令是否连接了我的文件?

我的 $ mv '*.mobi' 命令是否连接了我的文件?

在整理电子书时,我发现了一个对我的特定操作来说似乎很方便的解决方案;也就是说,我想将所有 mobi 文件从不同的子文件夹移动到一个名为“mobi”的中央文件夹中......

   $ find -name '*.mobi' -exec mv {} /mobi \;

而且,是的,我确实做了备份……正好是上面的一个目录。直到事后才意识到我做了什么。 (原件备份已移动/消失。)

经过一番搜索,我在根目录中发现了一个看似文件夹但看起来像 .mobi 文件的内容。大约 1.5mb(来自 30 本书);在 Atom 中打开会出现乱码(不是代码)。

我认为这是我以前的文件的某种卑鄙的合并,像《怪形》中的东西一样怪诞地相互融合。

有没有办法挽回我的愚昧呢?

答案1

mv <file> /mobi您运行的命令将针对 <file>它找到的每个命令执行。有几种可能的结果:

  1. /mobi之前存在,作为允许您的用户写入的目录:那么您的每个 mobi 文件现在都在目录内 /mobi(如果任何两个文件具有相同的名称,则其中一个将覆盖另一个);

  2. 要么/mobi以前作为允许用户覆盖的文件存在,要么它不存在,但允许您的用户在以下位置创建文件/:那么你们每个 mobi 文件都将按顺序覆盖该文件,该文件/mobi现在已作为其内容,找到的最后一个文件find

  3. 否则,所有mv命令都应该失败,并且没有任何内容被移动。

仅当您以 root 身份运行命令时,场景 (2) 听起来才可能出现(提示$反对)。在这种情况下,除了最后mv操作的文件之外的所有文件都会丢失。我想不出一种mv连接文件的合理方法。

相关内容