从日志文件中提取字段值

从日志文件中提取字段值

如何使用 unix 命令从日志文件中提取特定字段值。

例如我的日志文件包含,

"{"用户":"abcd","姓名":"迈克","中间名":"B","姓氏":null,"用户 ID":"1234","出生日期":"1800 年 1 月 1 日“}”

预期输出:abcd,mike,01-Jan-1800

答案1

使用 awk --

echo "{"user":"abcd","Name":"mike","middlename":"B","Lastname":null,"userid":"1234","Birthdate":"01-Jan-1800"}" | awk 'BEGIN {FS=","} {for(i=1;i<=NF;i++) {split($i,a,":"); val=a[2]; gsub("{|}","",val); print val}}'
abcd
mike
B
null
1234

相关内容