初学shell,遇到要将awk的日期转变格式的问题,用awk内建函数不好解决,考虑引入外部函数。
引入方法XXX和变量YYY
引入外部变量的格式是awk -v YYY=$YYY
引入外部方法有两种格式
system("xxx")
"xxx"|getline
前者返回的是执行后的状态,后者返回的执行后的结果。
注意几点
1 先用export -f xxx将方法xxx引为系统方法
2 用临时变量而不是直接传入语句
3 用close关闭管道
引入方法XXX和变量YYY
export -f XXX
awk -v YYY=$YYY '
{
print YYY;
date=$1;
cmd="transTime "date;
cmd|getline accesstime;
close(cmd);
}' $logfile
echo output to $outputfile1
}
引入外部变量的格式是awk -v YYY=$YYY
引入外部方法有两种格式
system("xxx")
"xxx"|getline
前者返回的是执行后的状态,后者返回的执行后的结果。
注意几点
1 先用export -f xxx将方法xxx引为系统方法
2 用临时变量而不是直接传入语句
3 用close关闭管道