好的,我有,例如,
Email:Phone:Name
Email2:Phone2:Name2
(3栏)
但是有些行只包含2列示例
Email3:Phone3
通知#3不包含名称/第3列
问题是如何删除仅包含2列的行。
答案 0 :(得分:5)
使用NF
作为字段分隔符,按字段数:
进行过滤:
awk -F: 'NF == 3' file
也就是说,NF == 3
是一个过滤器,匹配有3个字段的行(NF
包含当前行中的字段数)。对于与此过滤器匹配的行,将执行默认命令print
,
得到你想要的输出。
答案 1 :(得分:0)
sed 方法:
sed '/^[^:]*:[^:]*$/d' file
d
- 删除仅包含由: