我想将二进制文件从文件夹移动/myhome/sourcedir
到/myhome/targetdir
. 我用了一个命令find /myhome/sourcedir -type f -cmin +3 -exec mv '{}' /myhome/targetdir ';'
/myhome/sourcedir
执行此命令之前文件夹已存在,但文件夹/myhome/targetdir
不存在。我只是忘记创建/myhome/targetdir
.
此命令的结果 -/myhome/targetdir
创建了新文件。文件很大,包含很多奇怪的符号))
如何恢复我的所有文件?
假设find
找到了 3 个文件:a、b 和 c。这导致了 3 个命令:
mv a /myhome/targetdir
mv b /myhome/targetdir
mv c /myhome/targetdir
Run Code Online (Sandbox Code Playgroud)
因此,a 被重命名为 /myhome/targetdir,然后 b 被重命名为 /myhome/targetdir(破坏了以前的 a),然后 c 被重命名为 /myhome/targetdir,破坏了以前的 b。文件 c 很好(它刚刚被重命名)。其他文件有问题。看看被覆盖的文件可以恢复吗?. 你也许能够恢复一些东西。
将来,使用:
mv -t /myhome/targetdir '{}'
Run Code Online (Sandbox Code Playgroud)
会更安全。