- 論壇徽章:
- 0
|
本帖最后由 beacon1024 于 2013-11-11 22:27 編輯
# Hostname: BANCS01HADRDB
# Date: Mon May 27 12:36:01 CST 2013
# Uptime: 12:36PM up 25 days, 12:25, 2 users
# Hostname: PIPRDAP1
# RunDate: Thu Aug 29 15:58:36 CST 2013
# Uptime: 03:58:49 up 4 days, 16:51:20, 1 user
# Hostname: localhost
# RunDate: Thu Aug 29 15:57:58 CST 2013
# Uptime: 03:57PM up 7 days, 22:33, 1 user
# Hostname: BANCS02APP
# Date: Thu May 16 18:09:31 CST 2013
# Uptime: 06:09PM up 14 days, 18:01, 1 user
# Hostname: BANCS02XSAPP
# Date: Thu May 16 18:40:46 CST 2013
# Uptime: 06:40PM up 14 days, 18:30, 1 user
我有這些輸出,現(xiàn)在想把第一個(gè)冒號(hào)“:”左邊的所有文本都向左對(duì)齊,站位10個(gè)字符,其他全部向右對(duì)齊,類似如下:
# Hostname: BANCS01HADRDB
# Date: Mon May 27 12:36:01 CST 2013
# Uptime: 12:36PM up 25 days, 12:25, 2 users
# Hostname: PIPRDAP1
# RunDate: Thu Aug 29 15:58:36 CST 2013
# Uptime: 03
# Hostname: localhost
# RunDate: Thu Aug 29 15:57:58 CST 2013
# Uptime: 03:57PM up 7 days, 22:33, 1 user
# Hostname: BANCS02APP
# Date: Thu May 16 18:09:31 CST 2013
# Uptime: 06:09PM up 14 days, 18:01, 1 user
# Hostname: BANCS02XSAPP
# Date: Thu May 16 18:40:46 CST 2013
# Uptime: 06:40PM up 14 days, 18:30, 1 user
但是我用awk這樣實(shí)現(xiàn)
awk -F: '/^#/&&NF==4{printf "%-13s%s%s%s\n",$1":",$2,":"$3,":"$4;next}
/^#/&&NF==1{printf "%-13s%s\n",$1,$2;next}
/^#/{printf "%-13s%s\n",$1":",$2;next}{print " "$0}'
但是發(fā)現(xiàn)如果冒號(hào)數(shù)量不一樣,會(huì)出現(xiàn)異常,比如第六行就不對(duì)了。
簡單來說就是,不管有多少個(gè)冒號(hào)“:”,用”:“做分隔符,第一個(gè)字段左對(duì)齊,后面全部右對(duì)齊!
# Uptime: 03:58:49 up 4 days, 16:51:20, 1 user
怎么實(shí)現(xiàn)?各位指教,在線等! |
|