小编Rou*_*eau的帖子

awk 多个分隔符并打印多列

我正在尝试从日志输出创建 CSV 文件

日志文件的两行示例:

May 24 2013 18:13:24 ROUTER1 %%01IFNET/4/UPDOWN(l): The state of interface GigabitEthernet0/0/22 was changed to DOWN.
May 24 2013 17:59:33 ROUTER1 %%01FIB/3/REFRESH_END(l): FIB refreshing end, the refresh group map is 0!
Run Code Online (Sandbox Code Playgroud)

预期输出:

May 24 2013 18:13:24,ROUTER1,01IFNET,4,UPDOWN,The state of interface GigabitEthernet0/0/22 was changed to DOWN.
May 24 2013 17:59:33,ROUTER1,01IFNET,3,REFRESH_END,FIB refreshing end, the refresh group map is 0!
Run Code Online (Sandbox Code Playgroud)

我可以设法用这个 awk 命令得到一些正确的部分:

cat test.log | awk -F'[" "%%/(l)]' '{print $1" "$2" "$3","$4","$5","$8","$9","$10","}'
Run Code Online (Sandbox Code Playgroud)

输出:

May 24 2013 18:13:24,ROUTER1,01IFNET,4,UPDOWN,
May 24 2013 …
Run Code Online (Sandbox Code Playgroud)

awk

6
推荐指数
1
解决办法
3万
查看次数

标签 统计

awk ×1