Linux';什么是内部工作?
我知道在Linux中,如果我们想将文件夹从Linux';什么是内部工作?,linux,command-line,filesystems,Linux,Command Line,Filesystems,我知道在Linux中,如果我们想将文件夹从f_old重命名为f_new,我们可以运行: mv f_old f_new 但是这个命令实际上把我弄糊涂了。系统是否复制了f_old中的所有内容,将其粘贴到新文件夹f_new并最终删除f_old?或者它只是将f_old重命名为f_new?只要目标位置与源位置在同一个分区(文件系统)上,就不会移动甚至触摸数据。只更改目录项中的名称 如果目标位于单独的分区上,则数据将首先复制到目标,然后从源中删除。完整的手册中介绍了这一点,该手册解释了如何获取: T
f_old
重命名为f_new
,我们可以运行:
mv f_old f_new
但是这个命令实际上把我弄糊涂了。系统是否复制了
f_old
中的所有内容,将其粘贴到新文件夹f_new
并最终删除f_old
?或者它只是将f_old
重命名为f_new
?只要目标位置与源位置在同一个分区(文件系统)上,就不会移动甚至触摸数据。只更改目录项中的名称
如果目标位于单独的分区上,则数据将首先复制到目标,然后从源中删除。完整的手册中介绍了这一点,该手册解释了如何获取:
The full documentation for mv is maintained as a Texinfo manual. If
the info and mv programs are properly installed at your site, the comâ
mand
info coreutils 'mv invocation'
也可在以下网址在线获取:
mv可以将任何类型的文件从一个文件系统移动到另一个文件系统。之前
fileutils的4.0版,mv只能在
文件系统。例如,现在mv可以移动整个目录
层次结构,包括从一个分区到另一个分区的特殊设备文件
另一个它首先使用cp-a使用的一些相同的代码来
复制请求的目录和文件,然后(假设复制
成功)它将删除原件。如果复制失败,则零件
已复制到目标分区的磁盘将被删除。如果你是
将三个目录从一个分区复制到另一个分区
第一个目录的成功,但是第二个没有,第一个
将保留在目标分区以及第二个和第三个分区上
将保留在原始分区上
如果源和目标位于同一分区上,则不会复制或移动任何内容。各种inode组件被操纵,仅此而已。如果源和目标不同,则您将看到物理拷贝和删除 编辑-
请注意,操作的是目录项。这与inode不同 注意:名称不在inode中,而是在目录项/条目中。注意:名称不在inode中,而是在目录项/条目中。在inode中,最多可以更改->ctime。感谢您的回答和讨论。@Cosmoandcat您勾选了错误的答案。Inode内容不会更改(ctime可能例外),除非移动跨越设备边界。@wildplasser感谢提醒:)但是这个答案和下面的讨论确实帮助我理解了这个问题。也许jmf1205可以编辑他/她的帖子,这样就不会让其他人感到困惑了?也许这对你有帮助,但这是完全错误的@hek2mgl确实纠正了一些有用的答案,因此值得称赞。因此,问题不在于讨论,而在于(正确的)答案。