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