grep命令與正則表達式的應用示例、find命令應用示例

grep命令與正則表達式的應用示例、find命令應用示例

  • 顯示當前系統上root、fedora或user1用戶的默認shell。

    使用擴展正則表達式,它支持使用A|B表示或者之意。查看用戶的默認shell,cat /etc/passwd文件,根據用戶名所處位置進行錨定,其最后一個字段即表示該用戶的默認shell。實現方式及結果如下:

grep命令與正則表達式的應用示例、find命令應用示例
grep命令與正則表達式的應用示例、find命令應用示例  

  • 找出/etc/rc.d/init.d/functions文件中某單詞后面跟一組小括號的行,形如:hello()。

    這里需要注意的是小括號因為和正則表達式的元字符相沖突,如果直接寫()會有歧義,因此需要對小括號進行轉義:()。具體結果如下所示:

grep命令與正則表達式的應用示例、find命令應用示例  

  • 使用echo命令輸出一個絕對路徑,使用grep分別取出其基名。
    取出基名:

grep命令與正則表達式的應用示例、find命令應用示例  

  • 找出ifconfig命令結果中的1-255之間的數字。
    1-255之間的數字,如果按照如下方式分解:
    一位數:1-9
    二位數:10-99
    三位數:100-199,200-255
    使用正則表達式可以這樣匹配:

grep命令與正則表達式的應用示例、find命令應用示例  

  • 寫一個模式能匹配合理的IP地址。
    要匹配出合理的IP地址,個人理解還需要結合子網掩碼來判斷,如果是要匹配出ifconfig中合理的ip地址,可以使用如下模式進行匹配:

grep命令與正則表達式的應用示例、find命令應用示例  

  • 寫一個模式能匹配出所有的郵件地址。

grep命令與正則表達式的應用示例、find命令應用示例  

  • 查找/var目錄下屬主為root且屬組為mail的所有文件或目錄。
    find使用-user選項指定屬主,使用-group選項指定屬組。結果如下:

grep命令與正則表達式的應用示例、find命令應用示例  

  • 查找當前系統上沒有屬主或屬組的文件,且最近3天內曾被訪問過的文件或目錄。    
    find使用-nouser選項指定查找沒有屬主的文件;使用 -nogroup選項查找沒有屬組的文件;使用 -atime選項指定按文件的最后訪問時間查找。結果如下:

grep命令與正則表達式的應用示例、find命令應用示例
grep命令與正則表達式的應用示例、find命令應用示例  

  • 查找/etc目錄下所有用戶都有寫權限的文件。
    find使用-perm選項可以根據文件權限進行查找,常用的有為兩種使用方式,一種是-perm /mode,表示任何一類用戶中的任何一位權限滿足條件即可;一種是-perm -mode,表示每一類用戶中的每一位權限滿足條件才行。這里要求的是所有用戶都有寫權限,因此應該使用-perm -mode這種方式。
    結果如下:

grep命令與正則表達式的應用示例、find命令應用示例
也可以使用find /etc -perm -a+w

  • 查找/etc目錄下大于1M,且類型為普通文件的所有文件。
    find使用-size選項可以根據文件的大小進行查找,常用的有兩種使用方式,一種是-size +#unit (unit表示數字單位,有K,M,G),表示查找大于指定大小的文件;一種是-size -#unit,表示查找小于指定大小的文件。
    結果如下:

grep命令與正則表達式的應用示例、find命令應用示例  

  • 查找/etc/init.d目錄下,所有用戶都有執行權限,且其它用戶有寫權限的文件。

grep命令與正則表達式的應用示例、find命令應用示例  

  • 查找/usr目錄下不屬于root,bin或hadoop的文件。find支持使用操作符-a(相當于and),-o(相當于or),在這里使用-o操作符。!表示取反,類似于-not。

grep命令與正則表達式的應用示例、find命令應用示例  

  • 查找/etc目錄下至少有一類用戶沒有寫權限的文件。

grep命令與正則表達式的應用示例、find命令應用示例  

  • 查找/etc目錄下最近一周內其內容被修改過且不屬于root或hadoop的文件。
    括號要使用轉義符,“-7”表示在7天內。
    > [root@localhost etc]# find /etc -mtime -7 ! \( -user root -o -user hadoop \)

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

(0)
N24_lantianN24_lantian
上一篇 2016-11-28
下一篇 2016-11-28

相關推薦

  • Linux(Debian系)常用運維命令節選之一

    用硬件檢測程序kuduz探測新硬件:service kudzu start ( or restart) 查看CPU信息:cat /proc/cpuinfo 查看板卡信息:cat /proc/pci 查看PCI信息:lspci (相比cat /proc/pci更直觀) 查看內存信息:cat /proc/meminfo 查看USB設備:cat /proc/bus…

    Linux干貨 2016-10-30
  • MySQL入門書籍和方法分享

    原文:http://cenalulu.github.io/mysql/mysql-book-for-newbie/           作者: 盧鈞軼     本文羅列了一些適用于MySQL及運維入門和進階使用的書籍。 背景:各大論壇上總是…

    Linux干貨 2015-04-09
  • web服務 初步

    Web Service初步 一、引言 Web服務也是一個C/S架構,服務器端就是一個進程,客戶端是一個瀏覽器。我們打開瀏覽器的時候,都會看到hppt,https的字樣,然后才是輸入網址,這兩個協議是web服務的應用層協議,用來實現某些具體應用的。像https,前面學習openssl的時候也接觸過,https=http+ssl。 web的傳輸層協議用到了tcp…

    Linux干貨 2016-12-09
  • 正則表達式 小結

    聽老師和學姐都說,正則表達式很重要,所以這次我總結一下,同時加強一下記憶。 目前我們學的正則表達式有:字符匹配;匹配字數;位置錨定。 :. 匹配任意單個字符 [] 匹配指定范圍內的任意單個字符 [^] 匹配指定范圍外的任意單個字符 [:alnum:] 或 [0-9a-zA-Z] [:alpha:] 或 [a-zA-Z]…

    2017-07-31
  • linux中管道重定向

    linux中管道重定向 Linux 給程序提供三種I/O設備:    查看是否成功  echo $?      需要再執行命令后直接使用               &n…

    Linux干貨 2017-02-21
  • Linux 下的幫助及文件管理

    1、whatis     whatis command 或 man -f command     僅能提供命令基本的介紹。不提具體用法。     基于數據庫的查找,優點:檢索速度快;缺點:缺乏實時性    &n…

    2017-07-15

評論列表(1條)

  • 馬哥教育
    馬哥教育 2016-12-07 23:07

    作業寫的很棒,有圖有真相

欧美性久久久久