藍森林首頁 | 返回主頁 | 本站地圖 | 站內搜索 | 聯繫信箱 |
 您目前的位置:首頁 > 自由軟件 > 技術交流 > 應用編程


    

藍森林 http://www.lslnet.com 2006年6月26日 11:18


請教:如何用AWK命令對文本分列?

對一文本文件,需要按指定字符位置定義各列,並在裂間插入"|",我用 CUT 命令實現,因一行記錄要多次用 CUT, 執行效率特慢,我知道 AWK命令很好,但我不會用,請指教該如何用AWK實現以下功能?

-->

請教:如何用AWK命令對文本分列?

[code]sed 's/^.\(.\{12\}\)\(.\{6\}\)(.\{4\}\)\(.\{60\}\)(.\{4\}\)\(.\{60\}\)(.\{20\}\)\(.\{6\}\)(.\{30\}\).*$/\1|\1|\2|\3|\4|\5|\6|\7|\8|\9|/'
[/code]

請教:如何用AWK命令對文本分列?

請教:如何用AWK命令對文本分列?

幹不成腦力活兒只能幹體力活兒了,火兄不要見怪 :mrgreen:

請教:如何用AWK命令對文本分列?

請教:如何用AWK命令對文本分列?

恰好是<=9段,不然想幹點體力活也不成^_^

請教:如何用AWK命令對文本分列?

假設還有,不過是多出點兒汗
[code]sed 's/^.\(.\{12\}\)\(.\{6\}\)(.\{4\}\)\(.\{60\}\)(.\{4\}\)\(.\{60\}\)(.\{20\}\)\(.\{6\}\)(.\{30\}\)/\1|\1|\2|\3|\4|\5|\6|\7|\8|\9|/;
s/^.\(\{211\}\)\(.\{12\}\)\(.\{6\}\)(.\{4\}\).*$/\1|\2|\3|\4|/'
[/code]

請教:如何用AWK命令對文本分列?

請教:如何用AWK命令對文本分列?

用awk的substr()來做的效率不知道如何^_^

請教:如何用AWK命令對文本分列?

awk的substr
gensub
split我想都行
但寫起來也都要十來句
而且 substr()不就是cut -c麼?
gensub()相當於sed
split()要寫9個for?

我想直接用bash 的 ${VAR::}也行
不過看來看去全是體力活兒  :mrgreen:



Copyright © 1999-2000 LSLNET.COM. All rights reserved. 藍森林網站 版權所有。 E-mail : webmaster@lslnet.com