gpt4 book ai didi

linux - 有人可以解释重新格式化 awk () | 输出的最佳方法吗?排序 | uniq-c |排序-rg?

转载 作者:太空宇宙 更新时间:2023-11-04 10:54:35 28 4
gpt4 key购买 nike

我制作了一个用于分析 Windows 日志消息编号的脚本。 uniq -c 数字的输出很难预测,因为根据数字的大小会有不同的空白。此时,我手动删除了空白。

这是对消息进行排序和计数的命令:

cat nt2.rawlog | awk 'BEGIN {FS=","} {print $3,$4,$6,$7}' | sort | uniq -c | sort -rg >> ~/tempNT2.report

这是我对示例输出的最佳尝试:

21340  4624,Windows-Security-Audit-Log,Success Audit,Logon
1209 4658,Windows-Security-Audit-Log,Success Audit,Privileged Logon

我想要的输出是:

[tab]21340[tab]--[tab]Security Audit Log 4624 (Logon Success Audit)
[tab]1209[tab]--[tab]Security Audit Log 4658 (Privileged Logon Success Audit)

最佳答案

有点像

awk -F , '{ i = split($1, n, / +/);
printf ("\t%d\t--\t%s %d (%s %s)\n", n[i-1], $2, n[i], substr($4, 2), $3) }'

字段分隔符,做第一级拆分;然后我们用空格拆分第一个字段,并将数字提取到 n 中。 n 中的元素数量取决于该字段是否有前导空格,因此我们从末尾开始计算最后两个字段。最后一个字段有一个讨厌的前导空格,因此我们从该字段的第二个字符中提取一个子字符串。

关于linux - 有人可以解释重新格式化 awk () | 输出的最佳方法吗?排序 | uniq-c |排序-rg?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29328971/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com