時(shí)間:2015-06-28 00:00:00 來源:IT貓撲網(wǎng) 作者:網(wǎng)管聯(lián)盟 我要評(píng)論(2)
Linux文件有3個(gè)修改時(shí)間,很多朋友都喜歡弄混淆,也包括我在內(nèi),現(xiàn)在列出來供參考。
1)modification time (mtime,修改時(shí)間):這個(gè)時(shí)間指的是文件內(nèi)容修改的時(shí)間,而不是文件屬性的修改,當(dāng)數(shù)據(jù)內(nèi)容修改時(shí),這個(gè)時(shí)間就會(huì)改變,用命令ls -l默認(rèn)顯示的就是這個(gè)時(shí)間:
2)status time (ctime,狀態(tài)時(shí)間):當(dāng)一個(gè)文件的狀態(tài)改變時(shí),這個(gè)時(shí)間就會(huì)改變,例如更改了文件的權(quán)限與屬性等,它就會(huì)改變。
3)access time (atime,訪問時(shí)間):當(dāng)讀取文件內(nèi)容時(shí),就會(huì)更改這個(gè)時(shí)間,例如使用cat 去讀取/etc/man.config,那么該文件的atime就會(huì)改變。
例如:
# ls -l --full-time /etc/man.config
-rw-r--r--? 1 root root 4522 2007-11-17 18:47:54.000000000 +0800 /etc/man.config
# ls -l --time=atime --full-time /etc/man.config
-rw-r--r--? 1 root root 4522 2010-03-15 14:20:20.000000000 +0800 /etc/man.config
# ls -l --time=ctime --full-time /etc/man.config
-rw-r--r--? 1 root root 4522 2008-07-11 16:21:55.000000000 +0800 /etc/man.config
-----------------------------------------------------------------------------------
#cat /etc/man.config執(zhí)行之后再查看atime,該時(shí)間已經(jīng)更改
# ls -l --time=atime --full-time /etc/man.config
-rw-r--r--? 1 root root 4522 2010-03-15 14:24:30.000000000 +0800 /etc/man.config
更改文件權(quán)限:# chmod o-r /etc/man.config
查看ctime,已經(jīng)更改。
# ls -l --time=ctime --full-time /etc/man.config
-rw-r-----? 1 root root 4522 2010-03-15 14:28:34.000000000 +0800 /etc/man.config
如果對(duì)文件內(nèi)容進(jìn)行編輯,那么mtime就會(huì)改變了。
如果要一起查看文件的三個(gè)時(shí)間情況,可以用命令stat進(jìn)行查看
# stat /etc/man.config
File: `/etc/man.config'
Size: 4522 Blocks: 24?? IO Block: 4096?? regular file
Device: 807h/2055d Inode: 1049307???? Links: 1
Access: (0640/-rw-r-----)? Uid: (??? 0/??? root)?? Gid: (??? 0/??? root)
Access: 2010-03-15 14:24:30.000000000 +0800
Modify: 2007-11-17 18:47:54.000000000 +0800
Change: 2010-03-15 14:28:34.000000000 +0800
時(shí)間與上面的時(shí)間完全吻合。
文件的時(shí)間很重要,因?yàn)槿绻`判文件時(shí)間,可能會(huì)造成某些程序無法正常運(yùn)行,萬一我們發(fā)現(xiàn)一個(gè)文件的時(shí)間是未來的時(shí)間(很多時(shí)候會(huì)有這個(gè)問題,我們?cè)诎惭b的時(shí)候提到的GMT時(shí)間就是那個(gè)意思),那么怎樣才能讓次時(shí)間變成現(xiàn)在的時(shí)間呢?我們只需要一個(gè)touch命令即可。
touch的用法為:
touch [-actmd] 文件
參數(shù):
-a:僅修改access time
-c:僅修改時(shí)間而不建立文件
-t:后面可以接時(shí)間,格式為:[YYMMDDhhmm]
-m:僅修改mtime
-d:后面可以接日期,也可以使用--date="日期或時(shí)間"
例如:將man.config的日期調(diào)整為兩天前,則:
#touch -d "2 days ago" /etc/man.config
結(jié)果atime和mtime將會(huì)改變而ctime不會(huì)改變。
通過touch命令,可以輕松的修改文件文件的日期與時(shí)間,并且也可以建立一個(gè)空文件,不過要注意的是,即使復(fù)制一個(gè)文件并復(fù)制所有屬性頁沒有辦法復(fù)制ctime屬性。
touch命令常用的情況是
1)建立一個(gè)空文件
2)將某個(gè)文件日期修改為當(dāng)前日期(mtime和atime)
本文出自 "宗軍" 博客,請(qǐng)務(wù)必保留此出處http://tech110.blog.51cto.com/438717/283977
關(guān)鍵詞標(biāo)簽:linux文件
相關(guān)閱讀
熱門文章 安裝紅帽子RedHat Linux9.0操作系統(tǒng)教程 Tomcat9.0如何安裝_Tomcat9.0環(huán)境變量配置方法 多種操作系統(tǒng)NTP客戶端配置 Linux操作系統(tǒng)修改IP
人氣排行 Linux下獲取CPUID、硬盤序列號(hào)與MAC地址 dmidecode命令查看內(nèi)存型號(hào) linux tc實(shí)現(xiàn)ip流量限制 安裝紅帽子RedHat Linux9.0操作系統(tǒng)教程 linux下解壓rar文件 lcx.exe、nc.exe、sc.exe入侵中的使用方法 Ubuntu linux 關(guān)機(jī)、重啟、注銷 命令 查看linux服務(wù)器硬盤IO讀寫負(fù)載