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