awk 输出字段使用逗号


日志处理的时候经常会使用awk命令,如对日志进行分割输出等,输出的时候默认使用空格进行分割,如

原日志

这里是一行日志:userId:123456,mobile:1234567382

cat test.log |awk -F 'userId:' '{print $2}'

会输出:123456,mobile:1234567382

如果只想要筛选 userId和mobile的字段

cat test.log |awk -F 'userId:' '{print $2}' | awk -F ',mobile:' '{print $1,$2}'

输出:123456 1234567382

此时是逗号分隔

我们可以使用OFS修改默认输出字段分隔符

cat test.log |awk -F 'userId:' '{print $2}' | awk -F ',mobile:' 'BEGIN{OFS=","} {print $1,$2}'

输出:123456,1234567382

 

附:

FS : 输入字段分隔符,默认空格。

RS : 输入行分隔符,默认\n。

OFS : 输出字段分隔符,默认空格。

ORS : 输出行分隔符,默认\n

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM