命令分析_stat

Posted 恋就赖

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了命令分析_stat相关的知识,希望对你有一定的参考价值。

stat (Status) 显示指定文件的详细信息,比ls更详细

[email protected]:~ $ stat /tmp/
File: ‘/tmp/’
Size: 4096 Blocks: 8 IO Block: 4096 directory
Device: b302h/45826d Inode: 18 Links: 12
Access: (1777/drwxrwxrwt) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2016-11-25 18:00:45.307322115 +0000
Modify: 2017-08-03 12:46:42.396375118 +0000
Change: 2017-08-03 12:46:42.396375118 +0000
Birth: -


File: 显示文件名
Size: 显示文件大小
Blocks:文件使用数据块总数
IO Block:IO块大小
directory 文件类型,目录
regular file 文件类型,常规文件
Device:设备编号
Inode: Inode号
Links: 链接数
Access: 文件权限
Uid: ( 0/ root)
Gid: ( 0/ root)
Access:文件的访问时间。当文件内容被访问时,更新这个时间。
Modify:文件件内容的修改时间,当文件的数据内容被修改时,更新这个时间。
Change:文件的状态时间,当文件的状态被修改时,更新这个时间,例如文件的链接数,大小,权限,Blocks数。
Birth: -

Inode: Index Node,索引节点

Linux链接分两种,一种被称为硬链接(Hard Link),另一种被称为符号链接(Symbolic Link)。默认情况下,ln命令产生硬链接。

【硬连接】
硬连接指通过索引节点来进行连接。在Linux的文件系统中,保存在磁盘分区中的文件不管是什么类型都给它分配一个编号,称为索引节点号(Inode Index)。在Linux中,多个文件名指向同一索引节点是存在的。一般这种连接就是硬连接。硬连接的作用是允许一个文件拥有多个有效路径名,这样用户就可以建立硬连接到重要文件,以防止“误删”的功能。其原因如上所述,因为对应该目录的索引节点有一个以上的连接。只删除一个连接并不影响索引节点本身和其它的连接,只有当最后一个连接被删除后,文件的数据块及目录的连接才会被释放。也就是说,文件真正删除的条件是与之相关的所有硬连接文件均被删除。

【软连接】
另外一种连接称之为符号连接(Symbolic Link),也叫软连接。软链接文件有类似于Windows的快捷方式。它实际上是一个特殊的文件。在符号连接中,文件实际上是一个文本文件,其中包含的有另一文件的位置信息。

测试代码
[email protected]:/tmp/abc $ touch f1 # 创建一个测试文件f1
[email protected]:/tmp/abc $ ln f1 f2 # 创建一个f1的硬链接文件f2
[email protected]:/tmp/abc $ ln -s f1 f3 # 创建一个f1的软链接文件f3
[email protected]:/tmp/abc $ ls -li # -i参数显示文件的inode节点信息
total 0
257004 -rw-r--r-- 2 pi pi 0 Aug 3 13:39 f1
257004 -rw-r--r-- 2 pi pi 0 Aug 3 13:39 f2
257010 lrwxrwxrwx 1 pi pi 2 Aug 3 13:39 f3 -> f1

从上面结果可以看出,硬链接文件f2与源文件inode节点相同,软链接文件f2与源文件inode节点不同。

测试代码

 

[email protected]:/tmp/abc $ echo "How old are you" >>f1
[email protected]:/tmp/abc $ rm f1
[email protected]:/tmp/abc $ cat f1
cat: f1: No such file or directory
[email protected]:/tmp/abc $ cat f2
How old are you
[email protected]:/tmp/abc $ cat f3
cat: f3: No such file or directory
[email protected]:/tmp/abc $
通过上面的测试可以看出:当删除原始文件f1后,硬连接f2不受影响,但是软链接f1文件无效。

总结
软链接相当于文件的快捷方式
硬链接相当于复制了两份相同的文件。

以上是关于命令分析_stat的主要内容,如果未能解决你的问题,请参考以下文章

R_基本统计分析_06

ES extended_stats 函数

ps aux 命令分析

使用 /proc/*/stat 进行分析

python_数据分析_正态分布

webpack优化篇(三十九):初级分析:使用 webpack 内置的 stats