- Linux管理員教程
- 首頁
- CentOS概述
- 基本的CentOS Linux命令
- 檔案/資料夾管理
- 使用者管理
- 配額管理
- Systemd服務啟動和停止
- 使用systemctl進行資源管理
- 使用cgroups進行資源管理
- 程序管理
- 防火牆設定
- 在CentOS Linux中配置PHP
- 使用CentOS Linux設定Python
- 在CentOS Linux中配置Ruby
- 為CentOS Linux設定Perl
- 安裝和配置Open LDAP
- 建立SSL證書
- 安裝Apache Web伺服器CentOS 7
- 在CentOS 7上設定MySQL
- 設定Postfix MTA和IMAP/POP3
- 安裝匿名FTP
- 遠端管理
- CentOS中的流量監控
- 日誌管理
- 備份和恢復
- 系統更新
- Shell指令碼
- 軟體包管理
- 卷管理
- Linux管理員有用資源
- Linux管理員 - 快速指南
- Linux管理員 - 有用資源
- Linux管理員 - 討論
Linux管理員 - uniq命令
以下是uniq常用的開關。此命令報告或忽略重複的行。
| 開關 | 動作 |
|---|---|
| -c | 以出現次數作為行字首 |
| -i | 忽略大小寫 |
| -u | 僅列印唯一行 |
| -w | 檢查字元,比較不超過n個字元 |
| -s | 跳過字元,避免比較前兩個N個字元 |
| -f | 跳過欄位,避免比較前N個欄位 |
| -D | 列印所有重複行組 |
我們之前在一些例子中簡要地使用了uniq。uniq命令允許我們根據匹配項過濾檔案的行。例如,假設我們在銷售部門又獲得了一位名叫Matt Davis的員工。三天後,會計部門需要銷售參與獎下一季度的新的估算。我們可以使用以下命令檢查員工列表。
[root@centosLocal centos]# cat ./Documents/names.txt | wc -l 30 [root@centosLocal centos]#
我們告訴他們銷售部門有30人參加年度參與獎。會計部門很可能會注意到差異:他們只需要製作29個獨特的獎牌。讓我們再試一次 -
[root@centosLocal Documents]# cut -d ":" -f 1,2 ./names.txt | sort | uniq | wc -l 29 [root@centosLocal Documents]#
現在我們有足夠的資訊來提供給會計部門一個準確的銷售部門獨特參與獎的數量(他們不需要支付製作兩個唯一獎牌的費用。只需為“Matt Davis”複製第二個)。
注意 - 在查詢唯一行時,我們總是希望使用sort,將其輸出傳遞給uniq。如果非唯一條目不在行內順序,則它們將不會被視為重複行。
要快速生成一份報告,讓我們知道有多少銷售人員共用一個辦公室 -
[root@centosLocal Documents]# sort -t":" -k3 ./names.txt | cut -d ":" -f3 | uniq -c | sort -n 1 100 1 108 1 201 1 203 1 204 1 205 1 206 1 301 1 304 1 404 1 405 1 501 1 504 1 602 1 603 1 608 1 702 1 902 2 101 2 102 2 305 2 901 2 903 3 403 [root@centosLocal Documents]#
basic_centos_linux_commands.htm
廣告