我打算将一个目录移到另一个目录中。预期的命令是
mv evaluateA2P/ action2pose_bk/evaluateA2P/
然而,我犯了一个错字并执行了
mv evaluateA2P/ action2pose_bk/ evaluateA2P/
现在,在没有警告或提示的情况下, 的内容action2pose_bk/
将被 的内容覆盖evaluateA2P/
。我能否以某种方式恢复内容,或者我最好聘请律师?
系统信息
Linux XXXXXXX-workstation3 5.3.0-28-generic #30~18.04.1-Ubuntu SMP Fri Jan 17 06:14:09 UTC 2020 x86_64 x86_64 x86_64 GNU/Linux
这是刚刚发生的事情的演示:
/tmp$ mkdir test1 test2
/tmp$ touch test2/important_file
/tmp$ mv test1 test2 test1
mv: cannot move 'test1' to a subdirectory of itself, 'test1/test1'
/tmp$ ls test2
ls: cannot access 'test2': No such file or directory
答案1
mv evaluateA2P/ action2pose_bk/ evaluateA2P/
该命令的结果是将action2pose_bk
目录移动到evaluateA2P
目录中。要撤消该操作,只需运行以下命令将其移回:
mv action2pose_bk/evaluateA2P .
答案2
尝试这个,
mv test1/test2 . && mv test1 test2
答案3
就像您的演示一样,这是我在尝试您的真实场景时得到的结果:
mv evaluateA2P/ action2pose_bk/ evaluateA2P/
mv: cannot move 'evaluateA2P/' to a subdirectory of itself, 'evaluateA2P/evaluateA2P'
您的命令尚未成功运行完成。它所做的就是移入action2pose_bk
,evaluateA2P
因此只需将其再次移回
mv evaluateA2P/action2pose_bk .
或者,通过您的演示,
mv test1/test2 .
此时您可以再次尝试您想要的命令。但请注意,只有当目标action2post_bk/evaluateA2P
目录为空或尚不存在时,它才会成功:
mv evaluateA2P/ action2pose_bk/evaluateA2P/