[Linux] 每次一指令-grep:從檔案查詢內容

Env: Ubuntu14.04 LTS

[grep]
  Linux系統中grep命令是一種強大的文本搜索工具,它能使用規則運算式搜索文本,並把匹配的行列印出來。grep全稱是Global Regular Expression Print,表示全域規則運算式版本,它的使用權限是所有用戶。



  grep的工作方式是這樣的,它在一個或多個檔案中搜索字串範本。如果範本包括空格,則必須被引用,範本後的所有字串被看作檔案案名。搜索的結果被送到標準輸出,不影響原文件內容。

  grep可用於shell腳本,因為grep通過返回一個狀態值來說明搜索的狀態,如果範本搜索成功,則返回0,如果搜索不成功,則返回1,如果搜索的檔案不存在,則返回2。我們利用這些返回值就可進行一些自動化的文本處理工作。

  grep更進階的用法是搭配正規表示法,要進一步的了解請看這裡

-格式-
grep [-acinv] '搜尋字串' filename

-參數-
-a :將 binary 檔案以 text 檔案的方式搜尋資料
-c :計算找到 '搜尋字串' 的次數
-i :忽略大小寫的不同,所以大小寫視為相同
-n :順便輸出行號
-v :反向選擇,亦即顯示出沒有 '搜尋字串' 內容的那一行!
--color=auto 可將正確的那個擷取資料列出顏色

-範例-
[鳥哥]
[root@test root]# grep 'root' /var/log/secure/var/log/secure 這個檔案中有 root 的那一行秀出來

[root@test root]# grep -v 'root' /var/log/secure
若該行沒有 root 才將資料秀出來到螢幕上!

[root@test root]# last | grep root
若該行有 root 才將資料秀出來到螢幕上!

-我的應用-

留言

這個網誌中的熱門文章

[Javascript] 利用Google Calendar api 存取 Google 行事曆

[滑鼠] 羅技G402 換微動