find搜索命令


find 【查找範圍】 【條件表達式】

  • 條件表達式:-name  -size -type -user


  • -type中常用類型:f:普通文件、d:目錄、b:塊設備文件、c:字符設備文件


  • 塊設備文件:硬盤、內存

  • 字符設備文件:鍵盤、鼠標

   2.atime、mtime、ctime

atime:讀取文件或者執行的時候更改的
mtime:在寫入文件跟着內容的更改而更改
ctime:在寫入文件、更改所有者、權限、連接時隨着inode而更改

使用stat filename來查看三個time
一般情況下文件內容更改了那麼mtime和ctime就會更改
如果查看了文件那麼久atime更改其他不變
如果inode值更改了那麼其他都不會變

可以使用以下來查看三個time
ls -lc 查看ctime
ls -lu  查看atime
ls -l   查看mtime

  • find / -mtime +10   以秒爲單位


  • find / -mmin -5    以分鐘爲單位


  • find / -inum [inode號]  根據inode查看


  • find / -type f |xargs -i mv {} {}.bak  在根目錄下的所有文件都改名字


  • find / -type f +30 |xargs rm  將30天以前的文件都刪除掉


  • find / -type f -perm 777 查看目錄下權限爲777的文件


  • -o表示或者,兩個條件只要滿足一個即可執行


  • -a表示和,兩個條件必須滿足才能執行

  • depth:使查找在進入子目錄前先查找完本目錄

常用參數後面加上數字0、1等,0:表示查找本目錄  1:表示查看本目錄下的子目錄有哪些
使用方法爲depth或者-maxdepth


3.Linux中的find的命令結合其-path -prune參數
find ./ -path '*dir00*' -name *.txt        在當前目錄下的dir0目錄下的子目錄dir00及其子目錄下查找txt後綴文件
find ./ -path './dir0*' -a -prune -o -name *.txt -print   在除dir0及子目錄以外的目錄下查找txt後綴文件
find ./ \( -path './dir0*' -o -path './dir1*' \) -a -prune -o -name *.txt -print   在除dir0、dir1及子目錄以外的目錄下查找txt後綴文件
find ./ \( -path './dir0*' -o -path './dir1*' \) -a -name *.txt -print  在dir0、dir1及子目錄下查找txt後綴文件
find ./ -path '*/dir_general/*' -name *.txt -print   在所有以名爲dir_general的目錄下查找txt後綴文件


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章