Chinaunix

标题: 初学者请教awk问题。(匹配问题) [打印本页]

作者: 5729    时间: 2008-04-10 23:32
标题: 初学者请教awk问题。(匹配问题)
小弟在编写一个通讯录的程序,需要实现查询的功能。
用的是awk编写的语句如下:
awk '/'$NAME'/ {print $0}' filename
该语句实现查询没有问题,可是我
想在查询无结果时有提示。
不知如何是好?

请教各位:
请问awk有查询是否为空的返回值或变量么?
多谢~
作者: cjaizss    时间: 2008-04-10 23:42
awk '/'$NAME'/ {flag=1;print $0}END{if(flag==0)exit 1;}' filename
作者: 5729    时间: 2008-04-10 23:57
标题: 回复 #2 cjaizss 的帖子
多谢~
还想问一下,可以在查询结果为空时,输出提示语句么?
我试了一下,echo语句
awk '/'$NAME'/ {flag=1;print $0}END{if(flag==0) echo “..." ;exit 1;}' filename
不过貌似没有输出啊,不知道为什么
作者: cjaizss    时间: 2008-04-10 23:59
awk '/'$NAME'/ {flag=1;print $0}END{if(flag==0){printf "fuckyou!Nothing found!\n";exit 1;}}' filename
作者: 5729    时间: 2008-04-11 00:04
标题: 回复 #4 cjaizss 的帖子
呵呵,多谢!
问题解决了~
以后得多来这里转转,能学到很多呢~
不过为什么{}里不能用echo呢?
作者: cjaizss    时间: 2008-04-11 00:06
gawk下没有echo
作者: 5729    时间: 2008-04-11 00:11
标题: 回复 #6 cjaizss 的帖子
哦,看来我对awk的概念还不是很清楚,回去再看看~~
今天多谢了




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2