Linux
linux + 從文件中刪除重複的IP
從文件中刪除重複 IP 的最佳方法是什麼
我使用命令:
sort file | uniq
但我不確定這是否是最好的方法,也許我錯過了什麼?
備註:我的文件包含兩個欄位
文件範例
172.17.200.1 3.3.3.3 172.17.200.1 3.3.3.3 255.255.255.0 255.255.255.111 255.255.255.0 255.255.255.111 172.17.200.2 3.3.3.4 255.255.255.0 255.255.255.111 172.17.200.3 3.3.3.5 255.255.255.0 255.255.255.111 172.17.200.4 3.3.3.7 255.255.255.0 255.255.255.111 172.17.200.5 3.3.3.8 255.255.255.0 255.255.255.111 255.255.255.0 255.255.255.111 172.17.200.1 3.3.3.3 255.255.255.0 255.255.255.111 172.17.200.2 3.3.3.4 255.255.255.0 255.255.255.111 172.17.200.3 3.3.3.5 255.255.255.0 255.255.255.111 172.17.200.4 3.3.3.7 255.255.255.0 255.255.255.111 172.17.200.5 3.3.3.8 255.255.255.0 255.255.255.111 255.255.255.0 255.255.255.111
我相信像’sort -u’這樣簡單的東西應該適合你
#sort -u /tmp/test 172.17.200.1 3.3.3.3 172.17.200.2 3.3.3.4 172.17.200.3 3.3.3.5 172.17.200.4 3.3.3.7 172.17.200.5 3.3.3.8 255.255.255.0 255.255.255.111
查看“排序”手冊頁以獲取更多資訊:
-u, --unique with -c, check for strict ordering; without -c, output only the first of an equal run
嘗試
:%s/^\(.*\)\n\1$/\1/
這基本上比較了 vi 中文件上的行