我有如下输入,如果两行之间第三列的值不同,我需要在行之间放置一个分隔符。
one two three four
five six three seven
eight nine ten elevel
alpha beta ten gama
tango charlie oscar bla
预期结果:
one two three four
five six three seven
=
eight nine ten elevel
alpha beta ten gama
=
tango charlie oscar bla
这是我认为可行的方法,但实际上不行。
awk '{col3=$3;next} $3!=col3{$0="\n="$0;print $0}' input
最佳答案
$ awk '$3!=p && NR>1 { print "=" } { print; p=$3 }' file
one two three four
five six three seven
=
eight nine ten elevel
alpha beta ten gama
=
tango charlie oscar bla
关于bash - 如果值或两个连续的行与列不匹配,如何打印分隔符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48522125/