线上的一个系统时根据文件的inode和最后修改时间判断文件是否发生变化的,之前自己对于这块也有点模糊,干脆整理下。
新建文件:
ds@app-68:/tmp/xzm$ touch 33
ds@app-68:/tmp/xzm$ stat 33
文件:”33″
大小:0 块:0 IO 块:4096 普通空文件
设备:807h/2055d Inode:303109 硬链接:1
权限:(0644/-rw-r–r–) Uid:( 1315/ ds) Gid:( 1000/ netease)
最近访问:2015-08-21 11:00:42.000000000 +0800
最近更改:2015-08-21 11:00:42.000000000 +0800
最近改动:2015-08-21 11:00:42.000000000 +0800
touch vim 新文件:最近访问,最近更改,最近改动都会更改
touch 旧文件
ds@app-68:/tmp/xzm$ stat 22
文件:”22″
大小:14 块:8 IO 块:4096 普通文件
设备:807h/2055d Inode:303108 硬链接:1
权限:(0644/-rw-r–r–) Uid:( 1315/ ds) Gid:( 1000/ netease)
最近访问:2015-08-21 11:02:41.000000000 +0800
最近更改:2015-08-21 11:02:41.000000000 +0800
最近改动:2015-08-21 11:02:41.000000000 +0800
创建时间:-
最近访问,最近更改,最近改动都会更改
vim 旧文件 并修改
ds@app-68:/tmp/xzm$ stat 22
文件:”22″
大小:21 块:8 IO 块:4096 普通文件
设备:807h/2055d Inode:303108 硬链接:1
权限:(0644/-rw-r–r–) Uid:( 1315/ ds) Gid:( 1000/ netease)
最近访问:2015-08-21 11:03:28.000000000 +0800
最近更改:2015-08-21 11:03:31.000000000 +0800
最近改动:2015-08-21 11:03:31.000000000 +0800
创建时间:-
最近访问,最近更改,最近改动都会更改
vim 旧文件 不修改
ds@app-68:/tmp/xzm$ stat 22
文件:”22″
大小:27 块:8 IO 块:4096 普通文件
设备:807h/2055d Inode:303108 硬链接:1
权限:(0644/-rw-r–r–) Uid:( 1315/ ds) Gid:( 1000/ netease)
最近访问:2015-08-21 11:04:38.000000000 +0800
最近更改:2015-08-21 11:04:08.000000000 +0800
最近改动:2015-08-21 11:04:08.000000000 +0800
创建时间:-
最近访问,最近更改,最近改动都不会更改
mv vim 文件,不会改更文件的inode
ds@app-68:/tmp/xzm$ ls -lai 22
303108 -rw-r–r– 1 ds netease 27 8月 21 11:04 22
ds@app-68:/tmp/xzm$ mv 22 222
ds@app-68:/tmp/xzm$ ls -lai 222
303108 -rw-r–r– 1 ds netease 27 8月 21 11:04 222
inode没有发生变化
cp 文件,会改变文件的inode
ds@app-68:/tmp/xzm$ ls -lai 222
303108 -rw-r–r– 1 ds netease 27 8月 21 11:04 222
ds@app-68:/tmp/xzm$ cp 222 2222
ds@app-68:/tmp/xzm$ ls -lai 2222
303110 -rw-r–r– 1 ds netease 27 8月 21 11:09 2222
inode发生变化了。
跨盘的mv,会改变文件的inode
tips:
好久没写博客了,需要改变下!
您好 为什么我的系统上面通过vim修改一个文件的内容后 文件的inode也会改变??
vim会开个新的文件,这是vim的问题