支持linux正則表達式的工具有:grep:實現查找,sed,awk:都是流式編輯器,可以實現查找和替換,並且把替換的文本輸出到屏幕上。 grep工具 grep [-cinvABC] 'word' -c:列印符合要求的行數 -i:忽略大小寫 -n:輸出符合要求的行及行號。 -v:列印不符合要求的行 ...
支持linux正則表達式的工具有:grep:實現查找,sed,awk:都是流式編輯器,可以實現查找和替換,並且把替換的文本輸出到屏幕上。
grep工具
grep [-cinvABC] 'word'
-c:列印符合要求的行數
-i:忽略大小寫
-n:輸出符合要求的行及行號。
-v:列印不符合要求的行
-A: 後面跟一個數字(有無空格都可以),-A2表示列印符合要求的行以及下麵兩行
-B:後面跟數字,-B3 列印符合要求的行以及上面三行。
-C:後面跟一個數字,-C24列印符合要求的行以及上下各四行
# grep -c 'a' 1.txt
# grep -A3 'a' 1.txt
# grep -n 'b' 1.txt 過濾帶有關鍵詞的行,顯示行號。
# grep -nv 'ab' 1.txt 不符合要求的行及行號
# grep [0-9] 1.txt 過濾出所有包含數字的行
# grep -v [0-9] 1.txt 過濾出不包含數字的行
#grep -v '^#' 1.txt 過濾掉所有已#開頭的行
# grep -v '^#' 1.txt |grep -v '^$' 過濾掉所有以空行和以#開頭的行($表示結尾,空行可以用^$表示)
sed 工具
sed -n 'a'p filename a是一個數字,表示第幾行 ,-n 表示我們要列印的行,無關緊要的內容不顯示。
# sed -n '2'p 1.txt 顯示第二行內容
# sed -n '1,10'p 1.txt 顯示1-10行內容
# sed -n '1,$'p 1.txt 顯示所有行
#sed -n '/aa/'p 1.txt 列印包含aa的行
添加-e可以實現多種行為
#sed -e '1'p -e '/aabb/'p -n 1.txt 顯示第一行和包含aabb的行
查詢時,排除某些行
sed '1' d 1.txt 顯示所有內容時,排除第一行。
sed '1,3'd 1.txt 排除第一到第三行