[问题]gawk的问题

sh/bash/dash/ksh/zsh等Shell脚本
回复
bilyecit
帖子: 9
注册时间: 2007-10-09 18:17
送出感谢: 0
接收感谢: 0

[问题]gawk的问题

#1

帖子 bilyecit » 2007-10-28 14:27

declare temp

declare search_key
...

执行

temp=$(gawk"\$2 ~ /$search_key/ {print $3}" file)

为什么temp得不到$3的值



gawk"\$2 ~ /$search_key/ {print $3}" file

能输出正确的结果

悬非
帖子: 19
注册时间: 2007-07-27 22:16
送出感谢: 0
接收感谢: 0
联系:

#2

帖子 悬非 » 2007-10-28 19:43

echo $temp
bilyecit
帖子: 9
注册时间: 2007-10-09 18:17
送出感谢: 0
接收感谢: 0

#3

帖子 bilyecit » 2007-10-28 21:03

悬非 写了:echo $temp
echo $temp输出为空
悬非
帖子: 19
注册时间: 2007-07-27 22:16
送出感谢: 0
接收感谢: 0
联系:

#4

帖子 悬非 » 2007-10-28 22:54

你把整个脚本贴出来看看
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙
送出感谢: 4 次
接收感谢: 256 次

#5

帖子 eexpress » 2007-10-28 22:57

gawk"\$2 ~ /$search_key/ {print $3}" file

用``包括吧。这是shell里面,还是awk脚本里面啊。
● 鸣学
bilyecit
帖子: 9
注册时间: 2007-10-09 18:17
送出感谢: 0
接收感谢: 0

#6

帖子 bilyecit » 2007-10-29 11:32

eexpress 写了:gawk"\$2 ~ /$search_key/ {print $3}" file

用``包括吧。这是shell里面,还是awk脚本里面啊。
可能是我没有表述清楚意思

我是想
查找file文件中某行第二字段的值等于search_key的值(用户输入),并将该行第三字段的值赋给temp变量
悬非
帖子: 19
注册时间: 2007-07-27 22:16
送出感谢: 0
接收感谢: 0
联系:

#7

帖子 悬非 » 2007-11-01 23:41

bilyecit 写了:
eexpress 写了:gawk"\$2 ~ /$search_key/ {print $3}" file


查找file文件中某行第二字段的值等于search_key的值(用户输入),并将该行第三字段的值赋给temp变量

代码: 全选

~# cat xuanfei 
hi welcom
hi linux good
yes 
~# zz=$(awk '$2 ~/linux/ print $3}' xuanfei) awk: $2 ~/linux/ print $3}
~# zz=$(awk '$2 ~/linux/ {print $3}' xuanfei) 
~# echo $zz
good
~# 
回复

回到 “Shell脚本”