从文件中删除行

Rai*_*Son 3 python perl awk text text-processing

我正在unix系统上进行一些文本处理.我可以访问这台机器上的命令行,它有Python,Perl和安装的默认文本处理程序,awk等.

我有一个文本文件,如下所示:

2029754527851451717 
2029754527851451717 
2029754527851451717 
2029754527851451717 
2029754527851451717 
2029754527851451717 1232453488239 Tue Mar  3 10:47:44 2009
2029754527851451717 1232453488302 Tue Mar  3 10:47:44 2009
2029754527851451717 1232453488365 Tue Mar  3 10:47:44 2009
2895635937120524206 
2895635937120524206 
2895635937120524206 
2895635937120524206 
2895635937120524206 
2895635937120524206 
5622983575622325494 1232453323986 Thu Feb 12 15:57:49 2009
Run Code Online (Sandbox Code Playgroud)

它基本上是3行:ID ID Date

我希望删除所有没有2个ID和日期的行.因此,结果将是这样的:

2029754527851451717 1232453488239 Tue Mar  3 10:47:44 2009
2029754527851451717 1232453488302 Tue Mar  3 10:47:44 2009
2029754527851451717 1232453488365 Tue Mar  3 10:47:44 2009
5622983575622325494 1232453323986 Thu Feb 12 15:57:49 2009
Run Code Online (Sandbox Code Playgroud)

你们怎么建议这样做?总的来说,文本文件大约有30,000行.

干杯

EEF

Mar*_*ett 14

awk:

awk 'NF > 2' input_file > output_file
Run Code Online (Sandbox Code Playgroud)


Jam*_*kin 5

with open(source_filename) as src:
    with open(dest_filename, 'w') as dst:
        for line in src:
            if len(line.split()) > 1:
                dst.write(line)
Run Code Online (Sandbox Code Playgroud)