日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 运维知识 > linux >内容正文

linux

Linux文件的三种时间属性

發(fā)布時(shí)間:2024/9/27 linux 55 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Linux文件的三种时间属性 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

一、Linux文件時(shí)間屬性的分類(lèi)
我們?cè)谟脀indows系統(tǒng)時(shí),在查看磁盤(pán)文件時(shí),經(jīng)常會(huì)看到文件或目錄的后面有一個(gè)時(shí)間信息,這個(gè)是文件在磁盤(pán)上別創(chuàng)建的時(shí)間。其實(shí),在windows系統(tǒng)中,文件還有文件的修改時(shí)間、訪問(wèn)時(shí)間兩個(gè)時(shí)間屬性。

在linux系統(tǒng)中,文件同樣有時(shí)間屬性,不過(guò)Linux文件的時(shí)間屬性與windows略有不同,它的時(shí)間屬性分為;
1、訪問(wèn)時(shí)間(atime->access time):讀一次這個(gè)文件的內(nèi)容,這個(gè)時(shí)間就會(huì)更新。比如對(duì)這個(gè)文件運(yùn)用 more、cat等命令。ls、stat命令都不會(huì)修改文件的訪問(wèn)時(shí)間。
2、修改時(shí)間(mtime->modifiy time):修改時(shí)間是文件內(nèi)容最后一次被修改時(shí)間。比如:vi后保存文件。ls -l列出的時(shí)間就是這個(gè)時(shí)間。
3、狀態(tài)改動(dòng)時(shí)間(ctime->change time):ctime是在寫(xiě)入文件、更改所有者、權(quán)限或鏈接設(shè)置時(shí)隨i節(jié)點(diǎn)的內(nèi)容更改而更改的,是該文件的i節(jié)點(diǎn)最后一次被修改的時(shí)間,通過(guò)chmod、chown命令修改一次文件屬性,這個(gè)時(shí)間就會(huì)更新。
在Linux中,文件的時(shí)間屬性通過(guò)一個(gè)struct來(lái)表示。如下:

1 struct stat2 {3 dev_t st_dev; /* device inode resides on */4 ino_t st_ino; /* inode's number */5 mode_t st_mode; /* inode's mode */6 nlink_t st_nlink; /* number of hard links to the file */7 uid_t st_uid; /* user ID of owner */8 gid_t st_gid; /* group ID of owner */9 dev_t st_rdev; /* device type, for special file inode */10 struct timespec st_atimespec; /* time of last access */11 struct timespec st_mtimespec; /* time of last data modification */12 struct timespec st_ctimespec; /* time of last file status change */13 off_t st_size; /* file size, in bytes */14 int64_t st_blocks; /* blocks allocated for file */15 u_int32_t st_blksize;/* optimal file sys I/O ops blocksize */16 u_int32_t st_flags; /* user defined flags for file */17 u_int32_t st_gen; /* file generation number */18 };

二、Linux文件屬性的查看方法
1、ls命令簇
1)ls -lc filename 列出文件的 ctime (最后狀態(tài)更改時(shí)間)
2)ls -lu filename 列出文件的 atime(最后訪問(wèn)時(shí)間)
3)ls -l filename 列出文件的 mtime (最后修改時(shí)間)

注:以下每幅圖片修改前的時(shí)間為上一幅圖的中時(shí)間。
例如:

因?yàn)槲募倓倓e創(chuàng)建,沒(méi)有進(jìn)行任何的改動(dòng),所以這兒看到的ctime、atime、mtime是相同的。

當(dāng)我用vim向file文件里寫(xiě)入了一些東西后,ctime、atime、mtime全都發(fā)生了改變,因?yàn)橐騠ile文件里寫(xiě)入東西,那么必須要訪問(wèn)文件file,所以atime會(huì)改變,因?yàn)楦淖兞宋募ile的內(nèi)容,所以ctime、mtime會(huì)改變。

當(dāng)我用chmod改變文件file的權(quán)限后,因?yàn)樾薷牧宋募?quán)限,所以ctime肯定會(huì)改變,而修改文件權(quán)限肯定需要訪問(wèn)文件,所以atime被改變,但文件的內(nèi)容沒(méi)有被修改,那么文件的mtime不會(huì)改變。

2、stat命令
stat命令可以一次性更精確的看到文件的三種時(shí)間屬性。

三、總結(jié)
操作對(duì)三種時(shí)間屬性的影響:
1、cat、less等只訪問(wèn)文件,不修改文件的操作,只會(huì)修改atime的值。
2、chmod、chown等修改文件權(quán)限、所有者等的操作,會(huì)修改atime和ctime的值。
3、vim、emacs等修改文件內(nèi)容的操作,會(huì)修改atime、ctime、mtime的值。

創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來(lái)咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)

總結(jié)

以上是生活随笔為你收集整理的Linux文件的三种时间属性的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。