Bash linux下的海量文本文件处理

Bash linux下的海量文本文件处理,bash,text,Bash,Text,我有这样一个巨大的文本文件(至少1000000行): 要删除两列中具有有效IP地址的行,您将执行的最佳和最快的逻辑是什么?对于上述输入,要删除的行是 5.5.5.5 6.6.6.6 根据您给出的示例,我将假设您对“有效IP地址”的定义只是排除了端口指定。代替更详细的问题,请注意此命令将删除无效的456.789.123.456 $ awk -v re='^([0-9]+\\.){3}[0-9]+$' '$1!~re && $2!~re' file 1.1.1.1.10001

我有这样一个巨大的文本文件(至少1000000行):

要删除两列中具有有效IP地址的行,您将执行的最佳和最快的逻辑是什么?对于上述输入,要删除的行是

5.5.5.5  6.6.6.6

根据您给出的示例,我将假设您对“有效IP地址”的定义只是排除了端口指定。代替更详细的问题,请注意此命令将删除无效的
456.789.123.456

$ awk -v re='^([0-9]+\\.){3}[0-9]+$' '$1!~re && $2!~re' file
1.1.1.1.10001  2.2.2.2.80
3.3.3.3.53  4.4.4.4.23456
7.7.7.7.45329  8.8.8.8.443
我会编写一个C程序(或者一个RISE程序,或者一个C++程序,或者至少Python或OcAML)来处理这个文件。否则请使用
awk
请回答您的问题。您希望至少将示例行作为代码块提供,因此在每个lineRemove标记之前有四个空格。是一本灵活的软件速写簿,是一种学习如何在视觉艺术环境中进行编码的语言。此外,请准确定义您的有效IP地址。我想不出任何明显的定义(一个
ping
-able地址,或者DNS已知的东西,或者响应HTTP请求的东西),没有这些,你的问题就不清楚了
$ awk -v re='^([0-9]+\\.){3}[0-9]+$' '$1!~re && $2!~re' file
1.1.1.1.10001  2.2.2.2.80
3.3.3.3.53  4.4.4.4.23456
7.7.7.7.45329  8.8.8.8.443