我是一名研究生,可以访问我大学的研究小组 Linux 集群。这些年来,我积累了很多目录——我猜“文件夹”是 Windows/Mac 术语吗?-- 在我的主目录 ( ~
) 中。当我进行新的模拟时,我在我的主目录中创建一个新目录mkdir
,然后在该目录中运行模拟。
但是随着时间的推移,我在我的主目录中积累了许多这样的目录。现在我想将一些目录移动到子目录中。例如,我可能想创建一个名为的新目录simulations1_10
,然后将目录simulation1
, simulation2
, ...移动simulation10
到该目录中——这样我的主目录的根目录就会更有条理。
为此,我可以使用cp
. 例如:
cp -r simulation1/ simulations1_10/
Run Code Online (Sandbox Code Playgroud)
将目录simulation1
(及其所有内容)复制到目录simulations1_10
。然后我可以删除simulation1
.
但是,我的转让不跨越文件系统边界,所以mv
是多的速度比cp
。(mv
当然也允许我避免删除步骤。)例如:
mv simulation1/ simulations1_10/
Run Code Online (Sandbox Code Playgroud)
做的伎俩很快(不像cp
,mv
默认情况下递归)。根据this answer to this question,mv
速度要快得多,因为它“只是更新各个目录中的inode数据库”。
我的问题是,使用有什么危险mv
吗?
我认为一个危险是,如果在传输过程中mv
被中断(由于电源故障、用户按下Ctrl+C等),文件可能在源和目标中都被损坏。这样对吗?
另外,如果我使用mv
很多,是否有可能“inode …