[Shell] Sort 和 對齊
看到了網友提的要求,自己也測試了一下
[/tmp/test]# more test
59.69.61.0 59.69.63.255 American
59.70.12.0 59.70.15.255 Unit State
59.70.208.0 59.70.223.255 Unit State
59.71.48.0 59.71.51.255 Unit State
59.80.0.0 59.81.255.255 Unit State
59.83.64.0 59.83.255.255 Unit State
60.12.26.178 60.12.26.178 Canada
61.128.0.0 61.128.95.255 Unit State
61.132.139.108 61.132.139.108 China
61.132.139.114 61.132.139.114 China
61.153.148.153 61.153.148.153 Canada
61.153.148.162 61.153.148.162 Canada
61.190.72.38 61.190.72.38 China
61.190.75.3 61.190.75.3 China
61.190.75.6 61.190.75.6 China
61.232.215.0 61.232.223.255 Unit State
61.232.86.0 61.232.89.255 Unit State
61.234.153.0 61.234.155.255 Unit State
61.234.157.0 61.234.167.255 Unit State
61.237.0.0 61.237.0.1 Unit State
61.237.0.182 61.237.9.255 Unit State
61.237.0.3 61.237.0.180 Unit State
61.237.126.227 61.237.127.16 Unit State
61.237.127.18 61.237.127.224 Unit State
對上述的內容進行 排序 和 對齊
使用了sort和awk
[/tmp/test]# cat test | sort -k3 | awk 'BEGIN{OFS=":"}{print $1,$2,$3" "$4}' | awk 'BEGIN{FS=":"}{printf "%-20s%-20s%-20s\n",$1,$2,$3}'
59.69.61.0 59.69.63.255 American
60.12.26.178 60.12.26.178 Canada
61.153.148.153 61.153.148.153 Canada
61.153.148.162 61.153.148.162 Canada
61.132.139.108 61.132.139.108 China
61.132.139.114 61.132.139.114 China
61.190.72.38 61.190.72.38 China
61.190.75.3 61.190.75.3 China
61.190.75.6 61.190.75.6 China
59.70.12.0 59.70.15.255 Unit State
59.70.208.0 59.70.223.255 Unit State
59.71.48.0 59.71.51.255 Unit State
59.80.0.0 59.81.255.255 Unit State
59.83.64.0 59.83.255.255 Unit State
61.128.0.0 61.128.95.255 Unit State
61.232.215.0 61.232.223.255 Unit State
61.232.86.0 61.232.89.255 Unit State
61.234.153.0 61.234.155.255 Unit State
61.234.157.0 61.234.167.255 Unit State
61.237.0.0 61.237.0.1 Unit State
61.237.0.182 61.237.9.255 Unit State
61.237.0.3 61.237.0.180 Unit State
61.237.126.227 61.237.127.16 Unit State
61.237.127.18 61.237.127.224 Unit State
[/tmp/test]# more test
59.69.61.0 59.69.63.255 American
59.70.12.0 59.70.15.255 Unit State
59.70.208.0 59.70.223.255 Unit State
59.71.48.0 59.71.51.255 Unit State
59.80.0.0 59.81.255.255 Unit State
59.83.64.0 59.83.255.255 Unit State
60.12.26.178 60.12.26.178 Canada
61.128.0.0 61.128.95.255 Unit State
61.132.139.108 61.132.139.108 China
61.132.139.114 61.132.139.114 China
61.153.148.153 61.153.148.153 Canada
61.153.148.162 61.153.148.162 Canada
61.190.72.38 61.190.72.38 China
61.190.75.3 61.190.75.3 China
61.190.75.6 61.190.75.6 China
61.232.215.0 61.232.223.255 Unit State
61.232.86.0 61.232.89.255 Unit State
61.234.153.0 61.234.155.255 Unit State
61.234.157.0 61.234.167.255 Unit State
61.237.0.0 61.237.0.1 Unit State
61.237.0.182 61.237.9.255 Unit State
61.237.0.3 61.237.0.180 Unit State
61.237.126.227 61.237.127.16 Unit State
61.237.127.18 61.237.127.224 Unit State
對上述的內容進行 排序 和 對齊
使用了sort和awk
[/tmp/test]# cat test | sort -k3 | awk 'BEGIN{OFS=":"}{print $1,$2,$3" "$4}' | awk 'BEGIN{FS=":"}{printf "%-20s%-20s%-20s\n",$1,$2,$3}'
59.69.61.0 59.69.63.255 American
60.12.26.178 60.12.26.178 Canada
61.153.148.153 61.153.148.153 Canada
61.153.148.162 61.153.148.162 Canada
61.132.139.108 61.132.139.108 China
61.132.139.114 61.132.139.114 China
61.190.72.38 61.190.72.38 China
61.190.75.3 61.190.75.3 China
61.190.75.6 61.190.75.6 China
59.70.12.0 59.70.15.255 Unit State
59.70.208.0 59.70.223.255 Unit State
59.71.48.0 59.71.51.255 Unit State
59.80.0.0 59.81.255.255 Unit State
59.83.64.0 59.83.255.255 Unit State
61.128.0.0 61.128.95.255 Unit State
61.232.215.0 61.232.223.255 Unit State
61.232.86.0 61.232.89.255 Unit State
61.234.153.0 61.234.155.255 Unit State
61.234.157.0 61.234.167.255 Unit State
61.237.0.0 61.237.0.1 Unit State
61.237.0.182 61.237.9.255 Unit State
61.237.0.3 61.237.0.180 Unit State
61.237.126.227 61.237.127.16 Unit State
61.237.127.18 61.237.127.224 Unit State
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/24237320/viewspace-2059870/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 【Shell】sort 筆記筆記
- 希爾排序(Shell Sort)排序
- [shell基礎]——sort命令
- [Shell] Sort排序的例子排序
- <摘錄>位元組對齊(強制對齊以及自然對齊)
- 視窗和對話方塊居中對齊
- 《shell下sort排序命令的使用》排序
- Linux Shell之sort命令(轉)Linux
- Linux shell工具grep awk cut sort uniq sort 使用小結Linux
- [Shell] 統計字串出現的次數和排序(cut,sort,uniq)字串排序
- SwiftUI 佈局之元件對齊實現上下對齊和水平居中 (教程含原始碼)SwiftUI元件原始碼
- 對齊之美
- 文字對齊位置
- 位元組對齊
- Ubuntu和Windows雙系統時間對齊UbuntuWindows
- 如何讓input文字框和圖片對齊
- UICollectionView左對齊流水佈局、右對齊流水佈局UIView
- Python的符號、對齊和用0填充Python符號
- golang 位元組對齊Golang
- css居中對齊大全CSS
- android空格對齊Android
- 記憶體對齊記憶體
- 如何讓文字居右對齊,換行後又居左對齊
- 【Shell】【經驗】awk sed grep find sort常用配搭用法
- 關於stable_sort()和sort()的區別:
- <input>文字框和驗證碼圖片垂直對齊
- css使用transform垂直對齊CSSORM
- css文字兩端對齊CSS
- canvas textAlign 文字對齊Canvas
- GO 記憶體對齊Go記憶體
- 理解記憶體對齊記憶體
- 位元組對齊小談
- C++ 位元組對齊C++
- _sort_elimination_cost_radit和sort排序排序
- word中怎麼解決英文對不齊 word英文對不齊的方法
- LI 標籤中讓文章標題左對齊,日期右對齊的方法
- 實現文字標題和input文字框垂直居中對齊
- ·UILable屬性詳解,設定居上對齊,居中對齊,居下對齊,獲取斜體字,字型、大小、單位、顏色UI