Linux系統中檔案尋找工具

來源:互聯網
上載者:User

檔案尋找工具
檔案尋找工具:grep,egrep ,fgrep
下面主要介紹:grep和sed命令
 
行首錨定符^PATTERN
行尾錨定符$
\<PATTERN 詞首錨定符 加上引號單雙都行
PATTERN\>詞尾 錨定符
 .  匹配任意單個字元 不匹配斷行符號符
* 匹配此前的字元0到任意次
。*匹配任意長度的任一字元
Regex工作在貪婪模式:儘可能長的匹配符合模式的字串
精確匹配次數
?  匹配此前的字元0次或1次 ;
\{m,n\} 至少m次。至多n次
\{0,5}
[ ]匹配指定範圍內的任意單個字元
[^] 匹配指定範圍外的任意單個字元
-v 不匹配的-i 忽略大小寫 
- r
-B 後面跟的是數字n,顯示前n行
-A 顯示後n行
-C 顯示前後n行
-O 顯示匹配的字串而非尋找的那一行
-E 支援擴充Regex的
 
\(\)    \1 , 引用 此前括弧內 的內容
擴充Regexgrep -E
{}()|(或者)+(匹配一次)
 
標準輸入:keyboard   用0來表示
標準輸出:monitor     用1來表示
標準錯誤輸出:monitor  用2來表示
重新導向:
>輸出重新導向  覆蓋  不可返
>>追加重新導向相當於重新寫入
 
可以用set來設定是否用輸出重新導向:
 
set -C  不能用>
set +C  繼續使用>
錯誤輸出重新導向:2> 只定向正確輸出
2>>加重新導向
整合正確錯誤的資料流在一個檔案中: &>
 
 
在Linux系統中命令執行結後,都有一個返回碼
成功執行:0 錯誤:1-255
擷取傳回值  echo $?
/dev/null,bit bucket, 位桶
 
<輸入重新導向
<<
cat > /tmp/a.out << END
管道:|
把前一個命令的輸出當作前一個命令的輸入
COMMAND1 | COMMAND2 | COMMAND3
 
 
sed
使用基本Regex
    stream editor 行編輯器
非互動式編輯器
沒有破壞性
命令:
d 刪除行;
使用方式:sed "ADDR1 ,ADDR2/command" inputfile
,表示一個範圍
也可以用字元匹配來用:
 
/PATTERN/command
/PATTERN1/,/PATTERN/
p 顯示出模式比對的行 顯示兩次 即是列印命令
-n 只顯示模式匹配到的內容 即set -n ...
a\ 在匹配到的一行後添加一行\n
i\命令游標在匹配到行的上方
!對匹配條件取反的
s  尋找替換
s@@@  g i標誌位
  sed的常用選項:
-n :quiet
-e : -e '' -e ' '一次指定多個條件
-i :可直接修改原檔案
-f :可以讀取sed指令碼
 
 
 
本文出自 “linux學習” 部落格

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.