【发布时间】:2016-05-08 17:22:37
【问题描述】:
我有一个文本文件,其中的数据由 4 分隔 | 文件中有一些问题行。这些线路包含少于 4 个管道。 不需要问题行中的数据,我想在文件上运行一个命令,删除包含少于四个管道的任何行。我还想知道之后删除了多少行,所以如果在应用命令后可以将其打印在屏幕上,那将是理想的。
样本数据:
865|Blue Moon Club|Havana Project|34d|879
899|Soya Plates|Dimsby|78a|699
657|Sherlock
900|Forestry Commission|Eden Project|68d|864
期望的输出:
865|Blue Moon Club|Havana Project|34d|879
899|Soya Plates|Dimsby|78a|699
900|Forestry Commission|Eden Project|68d|864
我尝试了awk '|>=3' file.txt,但没有成功。有很多关于awk 的信息,其中一些是我找到的,但是由于其庞大的数量,所以很难找到我想要做的事情。
【问题讨论】:
-
我试过 awk '|>=3' file.txt 但这没有用
-
添加了示例数据和所需输出
-
awk -F'|' 'NF>3' file >new_file -
@Cyrus:
NF>4如果您需要四个管道。