如果输入如下所示:
1
2 4 5 6 7 19
20
22
24 26 27
29 30 31 32 34 40 50 56 58
234 235 270 500
1234 1235 1236 1237
2300
我想删除少于 2 列的行,因此输出应如下所示:
2 4 5 6 7 19
24 26 27
29 30 31 32 34 40 50 56 58
234 235 270 500
1234 1235 1236 1237
答案1
正如 Steeldriver 评论的那样:
awk 'NF>1' input > output
其他方式:
grep '[^ ] [^ ]' input > output
(查找一个非空格字符,后跟一个空格,再查找一个非空格字符)。
要“就地”编辑它:
sed -i '/[^ ] [^ ]/!d' input