不善于写作,可能有些地方会表达不清楚原本的含义,如果错误请指正。
在Linux中,有这几个常用的命令:cp-->复制,mv-->搬移/移动,rm-->删除/移除。
虽然我们经常使用它们,但我们是否对这些命令进行了更深入一层的了解。
下面就来看看:
cp对inode的影响:
1. 当复制行为发生的时候,系统会找到一个空inode number,然后将数据写入到inode table
2. 并且会新增一个目录,把文件的档案名称对应到inode number
3. 当inode number和inode table处理好了之后,系统才会将文件内容复制到新增的文件中
mv对inode的影响:
前提:使用mv命令搬移的文件目的地跟原文件在同一文件系统内
1. 系统会新建一个目录项,将新档案名称对应到inode number
2. 删除旧档案
rm对inode的影响:
1. 系统会减去文件的link count数字,然后将对应的inode number标记为可使用
========================================
PS:
例如,test.txt link count==>2
当使用rm test.txt后,
test.txt link count==>1
=========================================
2. 而文件所占用的block也会打上可以使用的“标签”
3. 最后移除文件名称和目录项
============================================
PS:
当我们使用rm命令的时候,系统并不会真正删除这个资料。除非有档案非要将资料存储在原来档案的这些block中。这 样原来的block就会被新档案给覆盖掉。
=============================================