shell腳本之正則表達式(四)---sort與uniq工具

sort 工具

sort 是一個以行爲單位對文件內容進行排序的工具,也能夠根據不一樣的數據類型來排序。

sort 語法

sort [選項] 參數

sort經常使用選項

-f:忽略大小寫
-b:忽略每行前面的空格
-M:按照月份進行排序
-n:按照數字進行排序
-r:反向排序
-u:表示相同的數據僅顯示一行(去除不連續的重複)
-t:指定分隔符,默認使用[Tab]鍵分隔
-o <輸出文件>:將排序後的結果轉存至指定文件
-k:指定排序區域

範例演示

將/etc/passwd 文件中第三列進行排序,並將輸出內容保存至user.txt 文件中vim

[root@localhost ~]# sort -t ':' -k 3 /etc/passwd -o user.txt          //將/etc/passwd 文件中第三列進行排序,並將輸出內容保存至user.txt 文件中
[root@localhost ~]# cat user.txt         //查看文件
root:x:0:0:root:/root:/bin/bash
czt:x:1000:1000:czt:/home/czt:/bin/bash
ccc:x:1001:1001::/home/ccc:/bin/bash
......


uniq 工具

Uniq 工具在 Linux 系統中一般與 sort 命令結合使用,用於報告或者忽略文件中的重複行。

uniq語法

uniq [選項] 參數

uniq經常使用選項

-c:進行計數
-d:僅顯示重複行
-u:僅顯示出現一次的行(僅去除連續的重複)

範例演示

刪除 testfile 文件中的重複行,並在行首顯示該行重複出現的次數bash

[root@localhost ~]# vim testfile
Linux 10
Linux 20
Linux 30
Linux 30
Linux 30
CentOS 6.5
CentOS 6.5
CentOS 6.5
CentOS 7.3
CentOS 7.3
CentOS 7.3

[root@localhost ~]# uniq -c testfile          //*刪除 testfile 文件中的重複行,並在行首顯示該行重複出現的次數
      1 Linux 10
      1 Linux 20
      3 Linux 30
      3 CentOS 6.5
      3 CentOS 7.3
相關文章
相關標籤/搜索