|
|
第 31 帖 | |
|
|
哇~~~这里藏龙卧虎!佩服!
那颠倒名和姓的问题总是不明白!谢谢!总算搞懂啦 ![]() 代码:
此帖于 03-02-14 00:57 被 KornLee 编辑. |
|
|
|
|
|
|
|
第 32 帖 | |
|
|
标题: awk命令大练习 awk命令练习.
文件:datafile Mike Harrington:[510] 548-1278:250:100:175 Christian Dobbins:[408] 538-2358:155:90:201 Susan Dalsass:[206] 654-6279:250:60:50 Archie McNichol:[206] 548-1348:250:100:175 Jody Savage:[206] 548-1278:15:188:150 Guy Quigley:[916] 343-6410:250:100:175 Dan Savage:[406] 298-7744:450:300:275 Nancy McNeil:[206] 548-1278:250:80:75 John Goldenrod:[916] 348-4278:250:100:175 Chet Main:[510] 548-5258:50:95:135 Tom Savage:[408] 926-3456:250:168:200 Elizabeth Stachelin:[916] 440-1763:175:75:300 上面的数据库中包含名字,电话号码和过去三个月里的捐款 1.显示所有电话号码 2.显示Dan的电话号码 3.显示Susan的名字和电话号码 4.显示所有以D开头的姓 5.显示所有以一个C或E开头的名 6.显示所有只有四个字符的名 7.显示所有区号为916的人名 8.显示Mike的捐款.显示每个值时都有以$开头.如$250$100$175 9.显示姓,其后跟一个逗号和名,如Jody,Savage 10.写一个awk的脚本,它的作用: .显示Savage的全名和电话号码 .显示Chet的捐款 .显示所有头一个月捐款$250的人名. 注:区号本来是圆括号表示的. |
|
|
|
|
|
|
|
第 33 帖 | |
|
|
哇,佩服佩服。又学到一招。
|
|
|
|
|
|
|
|
第 34 帖 | |
|
|
不知道对不对:
awk -F: '{if($1 ~ /^Dan /) print $2}' adatafile awk -F: '{if($1 ~ /^Susan /) print $1":"$2}' adatafile awk '{if($2 ~ /^D/) print $2}' adatafile |awk -F: '{print $1}' awk '{if($1 ~ /(^C|^E)/) print $1}' adatafile awk '{if(length($1)==4) print $1}' adatafile awk -F: '{if($2 ~ /\[916\]/) print $1}' adatafile awk -F: '{if($1 ~ /^Mike /) print "$"$3":$"$4":$"$5}' adatafile awk -F: '{print $1}' adatafile|awk '{print $2","$1}' #!/bin/awk -f BEGIN{ FS=":"} {if($1 ~/ Savage/) print $1":"$2} {if($1 ~/^Chet /) print "$"$3":$"$4":$"$5} {if($3 == 250) print $1} |
|
|
|
|
|
|
|
第 35 帖 | |
|
|
兄弟做得太快啦
我刚开始做您就出答案啦! 佩服佩服~~ |
|
|
|
|
|
|
|
第 36 帖 | |
|
|
还要多谢版大啊,你出的这些题目让我受益非浅啊,有很多东西学了一直没有用的机会,越来越淡忘了,这样复习一下,感觉又好起来了。
|
|
|
|
|
|
|
|
第 37 帖 | |
|
|
呵~~~因为这三个在UNIX/LINUX上经常用的实用命令,在shell中起很大的用处,sed,grep,awk把UNIX/LINUX的对数据操作的强大功能表现得淋漓尽致,希望兄弟有好的东西别忘了帖出来哟?!
![]() |
|
|
|
|
|
|
|
第 38 帖 | |
|
|
标题: 请教:) 1.javalee//home/javalee/x>awk -F: '{print $2}' d
2.javalee//home/javalee/x>awk -F: '/Dan/{print $2}' d 3.javalee//home/javalee/x>awk -F: '/Susan/{print $1,$2}' d 4.javalee//home/javalee/x>awk -F: '{print $1}' d|awk '/[a-zA-Z]* D[a-z]/{print $2}' Dobbins Dalsass 5.javalee//home/javalee/x>awk '/C|E[a-z]/{print $1}' d Christian Chet Elizabeth 6.??????请指教 ![]() 7.avalee//home/javalee/x>awk -F: '/(916)/{print $1}' d 8.javalee//home/javalee/x>awk -F: '/Mike/{print "$"$3,"$"$4,"$"$5}' d $250 $100 $175 9.javalee//home/javalee/x>awk -F: '{print $1}' d|awk '{print $2,",",$1}' 10: javalee//home/javalee/x>cat awkfile //awk脚本 #awk script /Savage/{print $1,$2} /Chet/{print "$"$3,"$"$4,"$"$5} /250/{print $1,$3} javalee//home/javalee/x>awk -F: -f awkfile d //运行awk脚本 Mike Harrington 250 Susan Dalsass 250 Archie McNichol 250 Jody Savage (206) 548-1278 Guy Quigley 250 Dan Savage (406) 298-7744 Nancy McNeil 250 John Goldenrod 250 $50 $95 $135 Tom Savage (408) 926-3456 Tom Savage 250 结果咋那么乱?!请指教 ![]() 此帖于 03-02-15 00:49 被 KornLee 编辑. |
|
|
|
|
|
|
|
第 39 帖 | |
|
|
awk是什么命令来的????
__________________
And then in the evening light, when the bars of freedom fall I watch the two of you in the shadows on the wall How in the darkness steals some of the choices from my hand Then will I begin to under |
|
|
|
|
|
|
|
第 40 帖 | |
|
|
awk是用来操作数据和产生报表的一种编程语言.
awk代表该语言的三位作者的姓的头一个字母,Alfred Aho,Peter Weinberger,Brian Kernighan. |
|
|
|
|
|
|
|
第 41 帖 | |
|
|
结果确实是乱的啊,但它要求的确实是这样的输出。
|
|
|
|
|
|
|
|
第 42 帖 | |
|
|
那它编出来的是什么东西的???
|
|
|
|
|
|
|
|
第 43 帖 | ||
|
|
引用:
http://www.linuxsir.com/bbs/showthre...threadid=21065 第九章来了解awk。 |
||
|
|
|
||
|
|
第 44 帖 | |
|
|
1 awk 'BEGIN {FS=":"} {print $2}' awkdata
2 awk 'BEGIN {FS=":"} {if($1~/Dan/) print $2}' awkdata 3 awk 'BEGIN {FS=":"} {if($1~/Susan/) print $1,$2}' awkdata 4 awk '{if($1~/^D/) print $1}' awkdata 5 awk '{if($1~/^[C,E]/) print $1}' awkdata 6 awk 'length($1)=="4" {print $1}' awkdata 7 awk 'BEGIN{FS=":"} {OFS=""} {print $2," ",$1}' awkdata | awk '{if($1~/\[916/) print $3}' 8 awk 'BEGIN{FS=":"} {OFS="$"} {if($1~/Mike/) print "",$3,$4,$5}' awkdata 9 awk 'BEGIN{FS=":"} {OFS=""} {print $2," ",$1}' awkdata | awk '{print $4","$3}' 10 #!/bin/awk -f BEGIN {FS=":"} {if($1~/Savage/) print $1,$2} {if($1~/Chet/) print $3,$4,$5} {if($3~/250/) print $1} 第9题是显示姓,后面的例子怎么是显示名在前呢?题目本身有问题 第10题很奇观,排列的顺序太乱了。。。 |
|
|
|
|
|
|
|
第 45 帖 | |
|
|
是很奇观!纳闷ing~~~
|
|
|
|
|
|