1.stat file命令下的三個時間
在Linux下可以利用ls -l查看文件的詳細信息,但是關於時間的一些詳細時間可能不會顯示,這時需要通過stat指令查看。
ls -l 顯示為下圖:
stat指令可以查看文件的詳細的狀態、准確的修改時間等,如下圖顯示
對比可發現stat file 比ls -l顯示的信息主要多了最近訪問(Access time)、最近更改(Modify time)、最近改動(Change time)等三個時間。
Access time: 讀一次這個文件的內容,這個時間就會更新。比如對這個文件使用more、less等命令。ls、stat命令都不會修改文件的訪問時間。
Modify time:對文件內容修改一次,這個時間就會更新。比如:vi後保存文件。ls -l列出的時間就是這個時間。
Change time:通過chmod命令更改一次文件屬性,這個時間就會更新。
2.find 指令
find指令用於:在一個目錄(及子目錄)中搜索文件,你可以指定一些匹配條件,如按文件名、文件類型、用戶甚至是時間戳查找文件。
find指令使用語法:# find [路徑] [參數] [表達式]
常用參數
-user 根據文件擁有者來查找文件
# find /root -user root 在root目錄下查找擁有者是root的文件
-group 根據文件的所屬組查找文件
# find /root -group root 在/root文件夾下查找所屬組為root的文件
-nouser 查找沒有文件擁有者的文件,例如有些木馬,但要注意有些linux系統文件本來就沒有用戶
# find /etc -nouser
-nogroup 查找沒有群組的文件,原理同-nouser
# find /etc -nogroup
-name 根據文件名字來查找
# find /ect -name services 在etc下查找名字為service的文件
-size 根據文件的大小來查找文件
# find /etc -size +1000k 查找大於1M的文件
-type 根據文件的類型來查找文件。一般的文件用f,字符c,塊文件b,目錄d,鏈接l
# find /root -type f 查找文件類型為一般文件
-atime +n 訪問或執行時間大於n天的文件
-ctime +n 寫入、更改inode屬性(更改所有者、權限或者連接等)時間大於n天的文件
-mtime +n 寫入時間大於n天的文件
-exec 將find查找的結果輸出給後面的指令作為輸入。比如。
# find ./ -mtime +10 -exec rm -rf {} \; 查找當前目錄中創建時間大於10天的文件並刪除
這個命令中也是把{}作為前面find出來的文件的替代符,後面的”\”為”;”的脫意符,不然shell會把分號作為該行命令的結尾
-perm 根據文件的權限來查找文件
# find /home -perm 600 查找權限為600的文件,還會顯示隱藏文件