Chinaunix
标题:
awk引用变量的问题,谢谢
[打印本页]
作者:
sea_soft
时间:
2008-10-28 10:06
标题:
awk引用变量的问题,谢谢
/data/aiocs/shell-> who
root console 7月 3日 14:33
prm pts/30 10月 28日 08:24 (192.168.168.190)
cbossrsp pts/14 10月 28日 08:49 (192.168.168.203)
cbossrsp pts/33 10月 28日 08:49 (192.168.168.203)
cbossrsp pts/4 10月 28日 08:36 (192.168.168.203)
aiocs pts/28 10月 28日 08:45 (192.168.168.20
bes pts/16 10月 28日 08:39 (192.168.168.197)
obcrm pts/1 10月 28日 08:45 (192.168.168.153)
chnl pts/34 10月 28日 08:58 (192.168.168.107)
chnl pts/32 10月 28日 09:06 (192.168.168.107)
cbossrsp pts/23 10月 28日 09:14 (192.168.168.196)
aiocs pts/24 10月 28日 09:15 (192.168.168.194)
aiocs pts/36 10月 28日 08:32 (192.168.168.192)
/data/aiocs/shell-> who|awk '{if($1==user) print $1" is connected to "$2}' user=$LOGNAME
aiocs is connected to pts/28
aiocs is connected to pts/24
aiocs is connected to pts/36
/data/aiocs/shell-> who|awk '{if($1==$LOGNAME) print $1" is connected to "$2}'
最后这句who|awk '{if($1==$LOGNAME) print $1" is connected to "$2}'显示不出结果,请问,这个是为什么?谢谢
作者:
blackold
时间:
2008-10-28 10:09
标题:
回复 #1 sea_soft 的帖子
把shell变量和awk变量混淆了。
作者:
ubuntuer
时间:
2008-10-28 10:15
awk内面自定义的变量都是不带$的,直接用就可以了.awk引用shell变量的时候awk -v user=$LOGNAME
作者:
sea_soft
时间:
2008-10-28 11:27
谢谢两位,用下面的也可以:
who|awk '{if($1=="'$LOGNAME'") print $1" is connected to "$2}'
作者:
kvkingdom
时间:
2008-10-29 12:44
要使用环境变量可用awk -v user=$LOGNAME然后在后面直接调用变量,或在语句中用ENVIRON["LOGNAME"]获取
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2