2012-08-14 75 views
0

我在鍵值對的形式輸出的命令:「:」排列:擊:鍵值漂亮印刷

key1: value 1 key2: value 2 ... 
key1: long value 1 key2: value 2 ... 
key1: val 1 key2: value 2 ... 

什麼,我想是這樣的,以漂亮的打印此輸出

key1: value 1  key2: value 2 ... 
key1: long value 1 key2: value 2 ... 
key1: val 1  key2: value 2 ... 

感謝

回答

0

只要你能忍受鍵的錯誤放置,下面很簡單的解決方案可以工作:

cat input | column -t -s ":" 

順便說一句,如果提取鍵之前管道輸出將看起來更好。

使用awk,perl或python可以獲得更好的結果,但是這在bash中是可行的,但腳本會更大(我已經開始但尚未完成)。後面的想法很簡單:使用兩遍 - 第一遍爲每個鍵計算最大偏移量並將其存儲在數組中,第二個基於偏移量的路徑注入精確數量的空間。