gpt4 book ai didi

linux - awk 条件行编号

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:47:13 27 4
gpt4 key购买 nike

我试图在文件中的每一行之前放置数字,但前提是第二列(字段)中的值与前面的值不同

输入文件:

11:10PM *Jane> login
11:15PM *Bob> login
11:16PM *Bob> logout
11:45PM *Betty> login
01:20AM *John> login

输出:

1. 11:10PM *Jane> login
2. 11:15PM *Bob> login
11:16PM *Bob> logout
3. 11:45PM *Betty> login
4. 01:20AM *John> login

最佳答案

利用 awk 中变量具有默认值这一事实:

{
if (last == $2) {
printf(" %s\n", $0)
} else {
n += 1;
last = $2;
printf("%2d. %s\n", n, $0);
}
}

这使用 n 来记住已看到的条目数,并使用 last 来记住最后看到的条目。

关于linux - awk 条件行编号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34980287/

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