1. 程式人生 > >linux inode資訊檢視命令stat

linux inode資訊檢視命令stat

在Linux中,沒有檔案建立時間的概念。只有檔案的訪問時間、修改時間、狀態改變時間。也就是說不能知道檔案的建立時間。但如果檔案建立後就沒有修改過,修改時間=建立時間;如果檔案建立後,狀態就沒有改變過,那麼狀態改變時間=建立時間;如果檔案建立後,沒有被讀取過,那麼訪問時間=建立時間,這個基本不太可能。

  與檔案相關的幾個時間:

  1、訪問時間,讀一次這個檔案的內容,這個時間就會更新。比如對這個檔案使用more命令。ls、stat命令都不會修改檔案的訪問時間。

  2、修改時間,對檔案內容修改一次,這個時間就會更新。比如:vi後儲存檔案。ls -l列出的時間就是這個時間。

  3、狀態改變時間。通過chmod命令更改一次檔案屬性,這個時間就會更新。檢視檔案的詳細的狀態、準確的修改時間等,可以通過stat命令檔名。

  比如: [[email protected] c]$ stat temp.c

  引用:

  File: 'temp.c'

  Size: 66 Blocks: 8 IO Block: 4096 \u4e00\u822c\u6587\u4ef6

  Device: 807h/2055d Inode: 1191481 Links: 1

  Access: (0664/-rw-rw-r--) Uid: ( 500/ jing) Gid: ( 500/ jing)

  Access: 2008-03-12 20:19:45.000000000 0800

  Modify: 2008-03-12 20:19:45.000000000 0800

  Change: 2008-03-12 20:19:45.000000000 0800

  說明:Access訪問時間。Modify修改時間。Change狀態改變時間。可以stat *檢視這個目錄所有檔案的狀態

在windows下,一個檔案有:建立時間、修改時間、訪問時間。
在Linux下,一個檔案也有三種時間,分別是:訪問時間、修改時間、狀態改動時間
兩者有此不同,在Linux下沒有建立時間的概念,也就是不能知道檔案的建立時間,但如果檔案建立後就沒有修改過,修改時間=建立時間;如果檔案建立後,狀態就沒有改動過,那麼狀態改動時間=建立時間;如果檔案建立後,沒有被讀取過,那麼訪問時間=建立時間,因為不好判斷檔案是否被改過、讀過、其狀態是否變過,所以判斷檔案的建立時間基本上能為不可能。 如何查一個檔案的三個時間呢?
先用下面的命令來建立一個檔案
# date && echo "thisis file be used test time of file" >filetime.txt && ll--full-time filetime.txt
Tue Aug  4 15:13:44 HKT 2009
-rw-r--r--    1root    root          39 2009-08-04 15:13:44.000000000 +0800 filetime.txt 通過statfilename.txt來查,如:
# stat filetime.txt 
  File: `filetime.txt'
  Size:39             Blocks:8         IO Block: 4096   RegularFile
Device:802h/2050d     Inode:17         Links:1    
Access: (0644/-rw-r--r--)  Uid:(   0/   root)   Gid:(   0/   root)
Access: 2009-08-0415:13:44.000000000 +0800
Modify: 2009-08-04 15:13:44.000000000 +0800
Change: 2009-08-04 15:13:44.000000000 +0800

說明:Access訪問時間。Modify修改時間。Change狀態改動時間。可以stat*檢視這個目錄所有檔案的狀態。
ctime=change time
atime=access time
mtime=modifiy time 因為這是一個新的檔案(filetime.txt),沒做過內容、屬性的更改,也沒讀過這個檔案,所以三者(訪問時間、修改時間、狀態改動時間)的時間是一致的,這時檔案的修改時間與這三個時間是一樣的,是沒有疑問的。 1、訪問時間,讀一次這個檔案的內容,這個時間就會更新。比如對這個檔案運用more、cat等命令。ls、stat命令都不會修改檔案的訪問時間。
2、修改時間,修改時間是檔案內容最後一次被修改時間。比如:vi後儲存檔案。ls -l列出的時間就是這個時間。
3、狀態改動時間。是該檔案的i節點最後一次被修改的時間,通過chmod、chown命令修改一次檔案屬性,這個時間就會更新。
另個除了可以通過stat來檢視檔案的mtime,ctime,atime等屬性,也可以通過ls命令來檢視,具體如下: ls -lc filename 列出檔案的ctime (最後更改時間) ls -lu filename 列出檔案的atime(最後存取時間) ls -l filename 列出檔案的 mtime(最後修改時間) 在linux中stat函式中,用st_atime表示檔案資料最近的存取時間(last accessedtime);用st_mtime表示檔案資料最近的修改時間(last modifiedtime);使用st_ctime表示檔案i節點資料最近的修改時間(last i-node's status changedtime)。  欄位          說明                 例子          ls(-l)
 st_atime 檔案資料的最後存取時間      read           -u
 st_mtime 檔案資料的最後修改時間      write          預設
 st_ctime 檔案資料的最後更改時間      chown,chmod    -c 在linux系統中,系統把檔案內容資料與i節點資料是分別存放的,i節點資料存放了檔案許可權與檔案屬主之類的資料。

相關推薦

linux inode資訊檢視命令stat

在Linux中,沒有檔案建立時間的概念。只有檔案的訪問時間、修改時間、狀態改變時間。也就是說不能知道檔案的建立時間。但如果檔案建立後就沒有修改過,修改時間=建立時間;如果檔案建立後,狀態就沒有改變過,那麼狀態改變時間=建立時間;如果檔案建立後,沒有被讀取過,那麼訪問時間=

Linux系統資訊檢視命令大全(2)

最近看了一些Linux命令列的文章,在系統資訊檢視方面學到不少命令。想起以前寫過的一篇其實Linux這樣用更簡單,發現這些系統資訊檢視命令也可以總結出一篇小小的東西來了。 另外這裡還有非常多的命令,可以作為參考。 系統 # uname -a # 檢視核心/作業系統/CPU資訊 #

linux伺服器程序資訊檢視命令

#lsof 列出當前系統開啟檔案,常與-i選項使用,用於檢視某個埠被哪個程式佔用 [root@bogon ~]# lsof -i:80 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME http

linux常見的檢視命令

1、檢視CPU的資訊: more /proc/cpuinfo 檢視PCI裝置的資訊: lspci 檢視核心模組的資訊:more /proc/modules 2、核心定製有四種方式: 文字互動問答方式: make config 文字視窗互動問答方式:make menuconfig

Linux 常見的檢視命令

top top命令是一個常用的檢視系統資源使用情況和檢視佔用系統資源最多的程序的命令。 top以列形式顯示所有的程序,佔最多CPU資源的程序會顯示在最上面。 htop htop命令是top的改進版。 預設情況下,大多數Linux發行版本都沒有安裝htop。 安裝指

Linux系統下python學習筆記——Linux系統資訊相關命令

系統資訊相關命令 目的:主要是為了方便通過遠端終端維護伺服器時,檢視伺服器上當前的  系統日期  和   時間/磁碟空間佔用情況/   程式執行情況。基本都是查詢命令,通過這些命令可以對系統資源的使用情況有個瞭解。 1、時間和日期 date&nbs

常用的Linux伺服器效能檢視命令

命令名稱 說明 top 程序監控命令,用來監控系統的整體效能。 可以顯示系統負載,程序,cpu,記憶體,分頁等資訊,常用shift+m和shift+p來按memory和cpu使用對程序進行排序。 vmstat 系統監控

Linux中怎麼檢視命令的幫助文件、怎麼檢視系統配置檔案的幫助文件?

引言:上期回顧(想要學習的童鞋可以點選看看) 上一章講訴了怎麼快速查詢檔案,以及怎麼找到一個命令所在位置,那麼這一章就來講怎麼檢視命令的幫助文件。在Linux命令中,我們是不會每個命令都會講到的,如果遇到沒有見過的命令該怎麼辦呢?建議大家先不要去問前輩,這樣自己的印象不會深

Linux 核心模組檢視命令

ldd命令顯示應用程式(二進位制程式)所依賴的庫檔案lsmod顯示當前被核心載入的模組也可以通過cat /proc/modules命令檢視modinfo檢視核心模組的資訊,包括開發人員資訊,依賴資訊modprobe向核心增加或者刪除指定模組預設是增加模組-r 刪除模組再解除安

Linux 系統資訊檢視

linux系統資訊放在根目錄/proc/下: 版本:cat /proc/version CPU:cat /proc/cupinfo  記憶體:cat /proc/meminfo 啟動時間:cat

linux下郵件檢視命令

系統提供了使用者之間通訊的郵件系統,當用戶開啟終端註冊登入時發現系統給出如下資訊: you have mail. 這時使用者可通過鍵入mail命令讀取信件: $ mail mail程式將逐個顯示使用者的信件,並依照時間順序,顯示最新的信件。每顯示一段信件,mail

redhat系統資訊檢視命令大全

系統 # uname -a # 檢視核心/作業系統/CPU資訊 # head -n 1 /etc/issue # 檢視作業系統版本 # cat /proc/cpuinfo # 檢視CPU資訊 # hostname # 檢視計算機名 # lspci -tv # 列出所有PCI裝置 # lsusb -tv #

文字資訊檢視命令之file,strings命令例項詳解

 file:將其引數內容的前幾個位元組,與樣式資料庫進行比對, 再在標準輸出下,針對各檔案顯示一行簡短報告 用途:該命令用來識別檔案型別,也可用來辨別一些檔案的編碼格式, 它是通過檢視檔

linux系統中檢視命令進度

使用cp命令複製大量檔案時,無法監視當前的進度,progress工具很好地解決了這個問題。 1、官網提供了下載連結,地址:https://github.com/Xfennec/progress 或者使用命令 $git clone [email protected]

linux伺服器效能檢視命令

5.Netstat-網路狀態統計 Netstat是一個用於監控進出網路的包和網路介面統計的命令列工具。它是一個非常有用的工具,系統管理員可以用來監控網路效能,定位並解決網路相關問題。 # netstat -a | moreActive Internet connections (servers and es

[轉]linux系統資訊查詢命令

# uname -a # 檢視核心/作業系統/CPU資訊  # head -n 1 /etc/issue # 檢視作業系統版本  # cat /proc/cpuinfo # 檢視CPU資訊  # hostname # 檢視計算機名  # lspci -tv # 列出所有PCI

MySQL連線及基本資訊檢視命令小結

前言 學習PHP就不得不提MySQL,雖然有phpMyadmin這樣的工具可以圖形化操作資料庫,但我還是想借學習PHP的機會使用下命令列方式操作資料庫。以下就是我的學習小結,包括命令列連線資料庫,檢視當前使用者,檢視當前使用的儲存引擎,檢視MySQL版本等基本

Linux資源監控檢視命令top—實時檢視cpu、記憶體、程序情況

top命令相當於window系統的工作管理員,這個命令可以讓我們輕鬆的檢視到linux當前負載的實時資料,便於我們更好的管理系統合理作出調整; top命令比window系統工作管理員更強大,通過相應引數可以更直觀快速輸出我們想要的資料,更加詳細便捷的提供給我們l

linux中使用ifconfig命令檢視網絡卡資訊時顯示為eth1,但是在network-scripts中只有ifcfg-eth0的配置檔案,並且裡面的NAME="eth0"

除了題目中的問題,其實在執行命令:service network restart時,會報錯: 解決辦法: 首先需要修改70-persistent-net.rules檔案: vim /etc/udev/rules.d/70-persistent-net.rules 然

linux檢視資源資訊常用命令

系統# uname -a # 檢視核心/作業系統/CPU資訊 # lsb_release -a # 檢視作業系統版本 (適用於所有的linux,包括Redhat、SuSE、Debian等發行版,但是在debian下要安裝lsb)