BASH删除零值的线路



i有一个文件,该文件长1500行,包含CPU值,但某种程度上有0条非常第二行。是否可以删除Bash命令中仅包含0的每一行?

8
0
9
0
10
0
10
0
8
0
9
0

删除所有零

使用grep -v

-v, --invert-match
             Selected lines are those not matching any of the specified patterns.

命令:

grep -v -e "^0$" file

问题在于它将删除行所有'0'行。

删除偶数行

awk 'NR % 2 != 0' file

在这种情况下,您必须确保所有的线都是要删除的行。

删除甚至是'0''

的行
awk 'NR % 2 != 0 || ! /0/' file

如果要删除第二行,但是只有当它包含0时,此衬里才会有所帮助:

awk '($0 == 0) && (NR % 2 == 0) { next } { print }' cpu_values.txt

这意味着,如果输入线等于0,并且是偶数线,则跳过它。否则,打印行。

相关内容

  • 没有找到相关文章

最新更新