二、uniq
三、tr
四、正規表示式
以行為單位對檔案內容進行排序,也可以根據不同的資料型別來排序
sort [選項] 引數
cat file | sort 選項
-f:忽略大小寫,缺省會將大寫字母排在前面
-b:忽略前導區域的區域
-n:按照數字進行排序
-r:反向排序
-u:等同於uniq,表示相同的資料僅顯示一行
-t:指定字段分隔符,預設使用[tab]鍵分隔
-k:指定排序字段
-o輸出文:將排序後的結果轉存至指定檔案
用於報告或者忽略檔案中連續的重複行,常與sort命令結合使用
uniq
[選項] 引數
catfile
|uniq 選項
-c:統計連續重複的數的次數並刪除檔案中重複出現的行,僅顯示一行
-d:僅顯示連續的重複行
-u:僅顯示出現一次的行
常用來對來自標準輸入的字元進行替換、壓縮和刪除
tr
[選項]
[引數]
注:這裡的引數不能為檔案!!!
-c:保留字符集1的字元,其他的字元(包括換行符\n)用字符集2替換
-d:刪除所有屬於字符集1的字元
-s:將重複出現的字串壓縮為乙個字串;用字符集2替換字符集1
-t:字符集2替換字符集1,不加選項同結果。
引數:
字符集1:指定要轉換或刪除的原字符集。當執行轉換操作時,必須使用引數「字符集2
"指定轉換的目標字符集。但執行刪除操作時,不需要引數 "字符集2";
字符集2:指定要轉換成的目標字符集。
通常用於判斷語句中,用來檢查某一字串是否滿足某一格式
正規表示式是由普通字元與元字元組成
元字元是指在正規表示式中具有特殊意義的專用字元,可以用來規定其前導字元(即位於元字元前面的字元)在目標物件中的出現模式
基礎正規表示式常見元字元:(支援工具:grep、egrep、sed、awk)
\
:轉義字元,用於取消特殊字元的含義,例:\!
、\n、\
$等^:匹配字串開始的位置,例:^a、
^the、^#
、^[a-z
]$:匹配字串結束的位置,例:word$、
^$匹配空行
.:匹配除
\n之外的任意乙個字元,例:go
.d、g..
d*:匹配前面子表示式
0次或多次,例:goo
*d、go.*
d[list
]:匹配list列表中的乙個字元,例:go
[oal]d,
[abc],
[a-z],
[a-z0-9]
,[0-
9]匹配任意乙個字元
[^list
]:匹配任意非list列表中的乙個字元,例:[^
0-9]
、[^0
-9a-z]、[
^a-z]\
:匹配前面的子表示式n次,例:go\d、
'[0-9]\'
匹配兩位數字
\:匹配前面的子表示式不少於n次,例:go\d、
'[0-9]\'
匹配兩位即兩位以上數字
\:匹配前面的子表示式n到m次,例:go\d、
'[0-9]\'
匹配兩到三位數字
注:egrep、awk使用(n)、(n,)、(n,m)匹配時「
」前不用加「
\」
擴充套件正規表示式元字元:(支援的工具:egrep、awk)
+
:匹配前面子表示式
1次以上,例:go
+d,將匹配至少乙個o,如god、good、goood等
?:匹配前面子表示式
0次或者
1次,例:go?d,將匹配到gd或god()
:將括號中的字串作為乙個整體,例:g(oo
)+d,將匹配oo整體
1次以上,如good、gooood等
|:以或得方式匹配字串,例:g(oo
|la)d,將匹配good或者glad
使用者名稱:^(
[a-za-z0-9_
\-\.
\+]+
)@子網域名稱:([
a-za-z0-9_
\-\.
]+).
頂級網域名稱(字串長度一般2-
5):\.
([a-za-z])
$
正規表示式 正規表示式 總結
非負整數 d 正整數 0 9 1 9 0 9 非正整數 d 0 負整數 0 9 1 9 0 9 整數 d 非負浮點數 d d 正浮點數 0 9 0 9 1 9 0 9 0 9 1 9 0 9 0 9 0 9 1 9 0 9 非正浮點數 d d 0 0 負浮點數 正浮點數正則式 英文本串 a za z...
正規表示式 表示式
網域名稱 a za z0 9 a za z0 9 a za z0 9 a za z0 9 interneturl a za z s 或 http w w w 手機號碼 13 0 9 14 5 7 15 0 1 2 3 5 6 7 8 9 18 0 1 2 3 5 6 7 8 9 d 號碼 x x x...
Linux正規表示式 編寫正規表示式
為了所有實用化的用途,你可以通過使用程式產生正確的結果。然而,並不意味著程式總是如你所願的那樣正確地工作。多數情況下,如果程式不能產生想要的輸出,可以斷定真正的問題 排除輸入或語法錯誤 在於如何描述想要的東西。換句話說,應該考慮糾正問題的地方是描述想要的結果的表示式。表示式不完整或者公式表示得不正確...