我已经使用 *nix 系统有一段时间了,我很惊讶地看到这种情况,其中mv
放错了位置或删除了我的文件。例如,我foo.txt
在名为 的目录中有一个文件previousVersions
,当我位于该目录的父目录中时,我发出了命令
mv previousVersions/foo.txt ..
期待它移动foo.txt
到我的工作目录。相反,foo.txt
既不在原始目录中,也不在我的工作目录中。为什么会发生这种情况?我的文件去了哪里?
答案1
mv previousVersions/foo.txt ..
会将文件移动foo.txt
到工作目录上方的目录。要将文件移动到您的工作目录,请替换..
为.
:
mv previousVersions/foo.txt .
由于文件当前位于当前工作目录的父目录中,您可以使用以下命令将其移动到当前工作目录:
mv ../foo.txt .
答案2
该文件不会被删除,它会在(当时)当前工作目录的父目录中等待您。
..
的目标是mv
相对于您当前的工作目录,而不是源文件的工作目录。