免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
123下一页
最近访问板块 发新帖
查看: 6316 | 回复: 22
打印 上一主题 下一主题

使用awk -f a.awk 方式 取得a.awk返回值问题!!求助 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2010-02-05 14:28 |只看该作者 |倒序浏览
根据
eval $(echo 1231koko12|awk '{j=match($1,"ko");{print "a="j}} ')

echo $a

5

我了解到通过eval  可以得到awk的返回值

可是我现在用 awk -f  a.awk $file 结合eval 却不行

请问 awk -f  a.awk $file 这种方式怎么在shell取得返回值

论坛徽章:
5
2015年辞旧岁徽章
日期:2015-03-03 16:54:152015年迎新春徽章
日期:2015-03-04 09:50:282015年亚洲杯之朝鲜
日期:2015-03-13 22:47:33IT运维版块每日发帖之星
日期:2016-01-09 06:20:00IT运维版块每周发帖之星
日期:2016-03-07 16:27:44
2 [报告]
发表于 2010-02-05 14:41 |只看该作者
今天怎么了?都是这种看不懂的贴子。

论坛徽章:
0
3 [报告]
发表于 2010-02-05 14:44 |只看该作者
#awkfile
{
    print match($0,"ko")
}

=====================
#file
1231koko12
================


#shellscript
#!/bin/bash
var=`awk -f awkfile  file`
echo "$var"



不知道是否是你要想要的》?

论坛徽章:
0
4 [报告]
发表于 2010-02-05 14:48 |只看该作者
我现在这么写的
eval  $( awk -v path=$filepath  -f  a.awk $file  )


报错 说 ( 附近语法错误

我想把 a.awk 中执行的个别数据返回到shell 继续判读

论坛徽章:
0
5 [报告]
发表于 2010-02-05 14:54 |只看该作者
我明白楼主意思了 等我重启虚拟机啊 呵呵

论坛徽章:
0
6 [报告]
发表于 2010-02-05 15:05 |只看该作者
cat a.awk
#!/bin/awk -f

{j=match($1,"ko");print j}
——————————————
a=`awk -f a.awk urfile`
echo $a

论坛徽章:
0
7 [报告]
发表于 2010-02-05 15:12 |只看该作者
最好不要使用 $()这种形式 用``最好,我们写的那个应该能实现你的需求啊。 非要用那种方法写吗?

论坛徽章:
0
8 [报告]
发表于 2010-02-05 15:13 |只看该作者
回复 6# nigelrax


    在a.awk文件中会有很多print出很多数据到终端
  而我只想取得两个项目的值 并且我不想打出这两个项目

论坛徽章:
0
9 [报告]
发表于 2010-02-05 15:15 |只看该作者
回复 7# iori809


   
你们的写法会把所有数据都取出来  
但我只想要 两个数据  其他数据则需要打到终端

论坛徽章:
0
10 [报告]
发表于 2010-02-05 15:23 |只看该作者
你的意思加入AWK输出3个数据,然后你只想输出两个吗? 给个具体数据看看 吧
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP