如果我在最后一个字段中找到从 64512 到 65535 的任何值,那么整行将被删除:
示例数据:
20170101|1.0.136.0/24|2497 38040 28969
20170101|1.0.137.0/24|2497 38040 33423
20170101|1.0.138.0/24|2497 38040 64603
20170101|1.0.139.0/24|2497 38040 10136
20170101|1.0.142.0/24|2497 38040 65222
20170101|1.0.144.0/24|2497 38040 65535
预期输出:
20170101|1.0.136.0/24|2497 38040 28969
20170101|1.0.137.0/24|2497 38040 33423
20170101|1.0.139.0/24|2497 38040 10136
有什么办法吗?
最佳答案
不清楚您所说的“最后一个字段”是什么意思。此数据是否由 |
分隔,使第一行中的最后一个字段成为字符串 2497 38040 28969
?或者,文本是否由空格分隔,最后一个字段只是 28969
?后者更容易做到:
awk '$NF<64512 || $NF > 65535' input-file
如果是前者,您需要更加努力地工作。
关于linux - 删除最后一个字段的基于整行的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44475998/