本著做事情夠用的原則,要不然無窮無盡,簡單使用下grep命令和sed命令。
1、grep
語法:grep pattern filename
pattern (搜尋的字串、數字等,也可以使用正表示式,萬用字元等等)
filename (檔案/目錄 或者 .)
引數 引數函式
-i
忽略大小寫
-w全詞匹配
-r/r
遞迴匹配資料夾中檔案
-n
顯示行號
-c顯示匹配行數
-v顯示不匹配的行
-l
顯示匹配的檔名
2、sed命令
(1)、命令介紹
sed是乙個很好的檔案處理工具,本身是乙個管道命令,主要是以行為單位進行處理,可以將資料行進行替換、刪除、新增、選取等
特定工作,下面先了解一下sed的用法
sed命令列格式為:
sed [-nefri] 『command』 輸入文字
(2)、引數
常用選項:
-n∶使用安靜(silent)模式。在一般 sed 的用法中,所有來自 stdin的資料一般都會被列出到螢幕上。
但如果加上 -n 引數後,則只有經過sed 特殊處理的那一行(或者動作)才會被列出來。
-e∶直接在指令列模式上進行 sed 的動作編輯;
-f∶直接將 sed 的動作寫在乙個檔案內, -f filename 則可以執行 filename 內的sed 動作;
-r∶sed 的動作支援的是延伸型正規表示法的語法。(預設是基礎正規表示法語法)
-i∶直接修改讀取的檔案內容,而不是由螢幕輸出。
常用命令:
a ∶新增, a 的後面可以接字串,而這些字串會在新的一行出現(目前的下一行)~
c ∶取代, c 的後面可以接字串,這些字串可以取代 n1,n2 之間的行!
d ∶刪除,因為是刪除啊,所以 d 後面通常不接任何咚咚;
i ∶插入, i 的後面可以接字串,而這些字串會在新的一行出現(目前的上一行);
p ∶列印,亦即將某個選擇的資料印出。通常 p 會與引數 sed -n 一起運作~
s ∶內容替換。
(3)、例項 (檔名為test)
(1)刪除某行
sed '1d' test #刪除第一行
sed '$d' test #刪除最後一行
sed '1,2d' test #刪除第一行到第二行
sed '2,$d' test #刪除第二行到最後一行
刪除匹配行
sed -i '/匹配字串/d' filename (注:若匹配字串是變數,則需要「」,而不是『』)
(2)顯示某行
sed -n '1p' test #顯示第一行
sed -n '$p' test #顯示最後一行
sed -n '1,2p' test #顯示第一行到第二行
sed -n '2,$p' test #顯示第二行到最後一行
(3)使用模式進行查詢
sed -n '/ruby/p' test #查詢包括關鍵字ruby所在所有行
sed -n '/\$/p' test #查詢包括關鍵字$所在所有行,使用反斜線\遮蔽特殊含義
(4)增加一行或多行字串
sed '1a drink tea' test #第一行後增加字串"drink tea"
sed '1,3a drink tea' test #第一行到第三行後增加字串"drink tea"
sed '1a drink tea\nor coffee' test #第一行後增加多行,使用換行符\n
(5)代替一行或多行
sed '1c hi' test #第一行代替為hi
sed '1,2c hi' test #第一行到第二行代替為hi
(6)替換一行中的某部分
格式:sed 's/要替換的字串/新的字串/g' (要替換的字串可以用正規表示式)
sed -n '/ruby/p' test | sed 's/ruby/bird/g' #替換ruby為bird
sed -n '/ruby/p' test | sed 's/ruby//g' #刪除ruby
(7)替換匹配行中的某個字串
sed -i '/匹配字串/s/替換源字串/替換目標字串/g' filename
(8)插入
sed -i '$a bye' ab #在檔案ab中最後一行直接輸入"bye"
差不多就是這些了,等用到再來查詢其他的。
Linux grep和符號命令
grep和符號命令 grep root etc passwd grep 可以過濾篩選出一些關鍵字的行 grep 條件 操作物件,檔案 1.管道符號 用符號 表示 cat etc passwd more cat etc passwd grep root cat etc passwd head 3 把前...
Linux grep和egrep命令 常用
grep和egrep grep語法格式 grep option pattern file1,file2 必須掌握的選項 v 顯示不匹配的pattern的行 i 搜尋時忽略大小寫 n 顯示行號 e 支援擴充套件的正規表示式 f 不支援正規表示式,按字串的字面意思進行匹配 r 遞迴搜尋 例如 ps ef...
linux grep命令詳解
linux grep命令 1.作用 linux系統中grep命令是一種強大的文字搜尋工具,它能使用正規表示式搜尋文字,並把匹 配的行列印出來。grep全稱是global regular expression print,表示全域性正規表示式版本,它的使用許可權是所有使用者。2.格式 grep opt...