六狼论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博账号登陆

只需一步,快速开始

搜索
查看: 67|回复: 0

awk中调用shell函数和变量的方法

[复制链接]

升级  27.33%

21

主题

21

主题

21

主题

秀才

Rank: 2

积分
91
 楼主| 发表于 2013-2-4 13:40:59 | 显示全部楼层 |阅读模式
初学shell,遇到要将awk的日期转变格式的问题,用awk内建函数不好解决,考虑引入外部函数。

引入方法XXX和变量YYY
export -f XXXawk -v YYY=$YYY '{    print YYY;    date=$1;    cmd="transTime "date;    cmd|getline accesstime;    close(cmd);}' $logfileecho output to $outputfile1}
引入外部变量的格式是awk -v YYY=$YYY
引入外部方法有两种格式
system("xxx")
"xxx"|getline
前者返回的是执行后的状态,后者返回的执行后的结果。

注意几点
1 先用export -f xxx将方法xxx引为系统方法
2 用临时变量而不是直接传入语句
3 用close关闭管道
您需要登录后才可以回帖 登录 | 立即注册 新浪微博账号登陆

本版积分规则

快速回复 返回顶部 返回列表