亚洲av成人无遮挡网站在线观看,少妇性bbb搡bbb爽爽爽,亚洲av日韩精品久久久久久,兔费看少妇性l交大片免费,无码少妇一区二区三区

  免費注冊 查看新帖 |

Chinaunix

  平臺 論壇 博客 文庫
最近訪問板塊 發(fā)新帖
查看: 2234 | 回復(fù): 3
打印 上一主題 下一主題

gnu , solaris 的awk執(zhí)行結(jié)果不同,怎么實現(xiàn)sun的 [復(fù)制鏈接]

論壇徽章:
0
跳轉(zhuǎn)到指定樓層
1 [收藏(0)] [報告]
發(fā)表于 2005-04-07 20:51 |只看該作者 |倒序瀏覽
問題:awk如何將數(shù)據(jù)每兩個空行做為分隔,然后處理分隔后的信息塊。
數(shù)據(jù)文件如下:
$ more t.txt
* ALARM 111111111
abcde


CLR ALARM 222222222
3333333333


444444444
555555555


**  ALARM666666666
777777777
888888888


     ALARM999999999
腳本如下:
  1. $ more cu2.sh
  2. input=$1
  3. awk 'BEGIN{RS="\n\n\n";FS="\n";OFS="\t"}{$1=$1;print $0 }' $input|awk '/ALARM/'| grep -v '^CLR'

復(fù)制代碼
在solaris2.8或者2.5版本運行得到以下結(jié)果:
$ cu2.sh t.txt
* ALARM 111111111
**  ALARM666666666
     ALARM999999999
$

在gnu下的awk(其他的linux也是)如下:
$ cu2.sh t.txt
* ALARM 111111111       abcde
**  ALARM666666666      777777777       888888888
     ALARM999999999

q3283c@tools-test2 /cygdrive/c/temp/shell
$


請教各位大俠,怎么能改成gnu那樣的輸出結(jié)果那。同一個程序沒有錯誤,但是sun的結(jié)果不對?哪位有經(jīng)驗?

論壇徽章:
0
2 [報告]
發(fā)表于 2005-04-07 21:18 |只看該作者

gnu , solaris 的awk執(zhí)行結(jié)果不同,怎么實現(xiàn)sun的

我沒環(huán)境測試,您試試nawk行不行
不行的話看您上個帖子第二頁第一個回復(fù),我貼的方法就是在solaris 2.8下完成的,您不是沒看見吧

論壇徽章:
0
3 [報告]
發(fā)表于 2005-04-07 22:45 |只看該作者

gnu , solaris 的awk執(zhí)行結(jié)果不同,怎么實現(xiàn)sun的

  1. $ more cu3.sh
  2. cat $1 | nawk '{
  3.       a[NR]=$0
  4.     }END{
  5.        for(i=1;i<=NR;i++){
  6.           if(a[i]~/^$/){
  7.              print ""
  8.           }else{
  9.           printf a[i]"|"
  10.           }
  11.        }
  12.     }' | grep -v '^CLR' | grep  'ALARM'

  13. $
復(fù)制代碼

嗯,哥們你的可以!就是有一點:我要在awk中將一個信息塊作為一個記錄來分析。那么你這個只能作為預(yù)處理,我還要之后再管道給awk去處理,麻煩啊,而且那樣效率是不是會低那?而且依然還得回到上一個問題上:(
你的做的是先以每行作為處理單位,過濾掉空行!另外我怎么把ALARM放到awk中輸出來的結(jié)果就不對啊,有空幫著優(yōu)化一下子。
你的tips里不是大堆的fire嘛,怎么沒有測試環(huán)境啊:(god save me

論壇徽章:
8
摩羯座
日期:2014-11-26 18:59:452015亞冠之浦和紅鉆
日期:2015-06-23 19:10:532015亞冠之西悉尼流浪者
日期:2015-08-21 08:40:5815-16賽季CBA聯(lián)賽之山東
日期:2016-01-31 18:25:0515-16賽季CBA聯(lián)賽之四川
日期:2016-02-16 16:08:30程序設(shè)計版塊每日發(fā)帖之星
日期:2016-06-29 06:20:002017金雞報曉
日期:2017-01-10 15:19:5615-16賽季CBA聯(lián)賽之佛山
日期:2017-02-27 20:41:19
4 [報告]
發(fā)表于 2005-04-08 08:40 |只看該作者

gnu , solaris 的awk執(zhí)行結(jié)果不同,怎么實現(xiàn)sun的

  1. gawk 'BEGIN{RS="";OFS="\t"}(gsub(/\n/,"\t"))&&/ALARM/&&! /^CLR/{print}'  $input
復(fù)制代碼
您需要登錄后才可以回帖 登錄 | 注冊

本版積分規(guī)則 發(fā)表回復(fù)

  

北京盛拓優(yōu)訊信息技術(shù)有限公司. 版權(quán)所有 京ICP備16024965號-6 北京市公安局海淀分局網(wǎng)監(jiān)中心備案編號:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年舉報專區(qū)
中國互聯(lián)網(wǎng)協(xié)會會員  聯(lián)系我們:huangweiwei@itpub.net
感謝所有關(guān)心和支持過ChinaUnix的朋友們 轉(zhuǎn)載本站內(nèi)容請注明原作者名及出處

清除 Cookies - ChinaUnix - Archiver - WAP - TOP