find命令詳解

find命令詳解

基本介紹

find命令用來從目錄系統中查找文本
不同于locate,find不從數據庫中查找文件,所以find速度略遜于locate,但find是實時且準確的,而且不需要占用系統資源進行遍歷文件。 其標準格式如下

find [-H] [-L] [-P] [-D debugopts] [-O level] [path...] [expression]

[OPTION] 選項

  • -P 為默認選項 不跟隨顯示符號鏈接文件,只顯示符號鏈接文件本身
  • -H -L -D 并不常用,此處暫且不表。
  • -Olevel 可以進行優化配置,默認為1。(大寫o直接跟數字不帶空格) 總共有-O0 -O1 -O2 -O3 四階。其中-O0等同于-O1,-O1為默認選項 -O2和-O3用不到

[PATH. . .] 路徑

該文件路徑為文件查找的起始路徑,即在哪個文件下查找所需要的文件

[EXPRESSION] 表達式

find命令通過與表達式相匹配來鎖定要搜索的文件。常用表達式如下:

-name 按【文件名稱】查找文件,支持通配符,匹配文件的basename  -iname 同-name 忽略大小寫  -inum 按【inod號】查找文件  -samefile name 查找硬鏈接文件  -links n 查找鏈接數為n的文件  -regex “PATTERN” 使用正則表達式查詢文,此處正則表達式有異于grep的正則表達式,而且匹配的字符不是basename,而是/dirname/basename

根據文件屬主屬組查找

-user USERNAME 按【屬主】查找文件  -group GROUPNAME 按【屬組】查找文件  -uid UID 按【UID】查找文件  -gid GID 按【GID】查找文件  -nouser 查找無屬主的文件或目錄  -nogroup 查找無屬組的文件或目錄

根據文件類型查找

-type TYPE 查找特定文件類型的文件

其中文件類型包括

f 普通文件  

d 目錄文件  

l 符號鏈接文件  

s 套接字文件 b 塊設備文件  

c 字符設備文件 p 管道文件

根據文件大小查找

-size [+|-]#UNIT #代表數字;UNIT為常用文件大小單位:k、M、G
#   代表范圍  (#-1,#]  +#  代表范圍  (0,#-1]  -#  代表范圍  (#,+∞)

根據時間戳查找
以“天”為單位

-atime[+|-]#   -mtime[+|-]#   -ctime[+|-]#

以“分鐘”為單位

-amin[+|-]#   -mmin[+|-]#   -cmin[+|-]#

這里的[+|-]#用法與文件大小的用法相同

#   代表范圍  (#-1,#]  +#  代表范圍  (0,#-1]  -#  代表范圍  (#,+∞)

根據文件權限查找

-perm /MODE  -perm -MODE  -perm MODE

MODE為數字格式表現的屬主屬組其他用戶的權限,例如:

775 代表 rwxrwxr-x 664 代表 rw-rw-r--
-perm /MODE 屬主、屬組、其他三者,滿足rwx其中任意一項即可匹配  -perm -MODE 屬主、屬組、其他三者都滿足rwx即可匹配  -perm MODE 屬主、屬組、其他權限與MODE完全相同

find命令的邏輯組合
find命令可以用邏輯命令匹配滿足多個條件的文件

-a            “與”運算,可以省略  -o            “或”運算  -not或者!    “非運算”

查找文件后的處理動作

-print 打印到屏幕上  -ls 打印到屏幕上 類似于“ls -l”  -delete 刪除制定查找的文件  -fls /PATH/TO/FILE 將查找到的內容輸出至文件FILE -ok COMMAND {} ;\ 對查找到的文件進行COMMAND指令,{}為前面文件查找內容,交互式動作之前會有提示  -exec COMMAND {} ;\ 對查找到的文件進行COMMAND指令,{}為前面文件查找內容,非交互式動作之前無提示

原創文章,作者:easyTang,如若轉載,請注明出處:http://www.www58058.com/72909

(0)
easyTangeasyTang
上一篇 2017-04-09 14:08
下一篇 2017-04-09 15:21

相關推薦

  • 配額-and-RAID

    配置配額系統 控制單個用戶,或組在某磁盤上所能占的最大空間大小 配額是基于磁盤分區的,不基于文件 如何基于軟件控制配額:          1、設置分區掛載選項          &nbsp…

    Linux干貨 2016-08-29
  • 自動化運維跟安全配置

    安全相關工具rpm -qf /usr/bin/sshopenssh semanage port -a -t ssh_port_t -p tcp #PORTNUMBER/端口9527修改ssh的默認端口,ssh默認只能用22端口多臺主機互聯免口令1 ssh-keygen三臺主機各自生成私鑰公鑰2 ssh-copy-id IP7三臺主機各自復制公鑰到同一臺主機3…

    2018-02-06
  • 第一周作業

    1、描述計算機的組成及其功能。
    2、按系列羅列Linux的發行版,并描述不同發行版之間的聯系與區別。
    3、描述Linux的哲學思想,并按照自己的理解對其進行解釋性描述。
    4、說明Linux系統上命令的使用格式;詳細介紹ifconfig、echou、tty、startx、export、pwd、history、shutdown、poweroff、reboot、hwclock、date命令的使用,并配合相應的示例來闡述。
    5、如何在Linux系統上獲取命令的幫助信息,請詳細列出,并描述man文檔的章節是如何劃分的。
    6、請羅列Linux發行版的基礎目錄名稱命名法則及共用規定。

    Linux干貨 2017-12-03
  • ContOS 7 安裝

    在虛擬機中安裝ContOS 7,自定義4個分區
    虛擬機使用ISO鏡像文件安裝,網絡使用橋接模式,內存大小設置為1224MB(安裝桌面比較大)

    2018-03-13
  • shell腳本編程之變量詳解

    什么是變量     變量是計算機內存的單元,其中存放的值可以改變。當Shell腳本需要保存一些信息時,如一個文件名或是一個數字,就把它存放在一個變量中。每個變量有一個名字,所以很容易引用它。 使用變量可以保存有用信息,使系統獲知用戶相關設置,變量也可以用于保存暫時信息。 變量:變量類型 作用:  &…

    Linux干貨 2016-08-15
  • Linux的用戶組和權限(一)

    導讀:本章主要內容如下       1.解釋Linux的安全模型      2.解釋用戶賬號和組群賬號的目的      3.用戶和組管理命令      4.理解并設置文件權限 &n…

    Linux干貨 2016-08-04

評論列表(1條)

  • renjin
    renjin 2017-04-12 11:44

    寫的內容雖然不多,但卻很給人以精細感,主要介紹了find命令的用法,內容寫的很詳細,排版也很不錯

欧美性久久久久