分页: 1 / 1

提取文本中符合条件的行

发表于 : 2010-12-20 17:21
syfnet
我有一个超大文本,用Excel等无法处理,只能考虑在bash中操作一下,其具体格式如下:

代码: 全选

# [size=85]File containing a listing of the fitness of the top-ranked
# individual for each ligand docked in GOLD.
#
# Format is:
#
#     Fitness  S(hb_ext) S(vdw_ext)  S(hb_int)    S(int)  time             File name         Ligand name

     63.94       7.83      50.79       0.00     -13.72   386.000         '.\gold_soln_sah        'SAH'
     77.52       2.05      62.54       0.00     -10.52   325.000         '.\gold_soln_f'   'AG-205/36450026'
     67.38       9.35      52.76       0.00     -14.51   267.000          '.\gold_soln   'AG-670/36514007'
     65.37       1.78      51.34       0.00      -7.00   66.999           '.\gold_soln_   'AG-205/36564014'[/size]..........
..........
欲对每一行数字进行检测,提取大于60的行到一个新的文件,如何操作?

Re: 提取文本中符合条件的行

发表于 : 2010-12-20 17:44
huangyun
用awk吧,很简单的

Re: 提取文本中符合条件的行

发表于 : 2010-12-20 17:52
linxiaoyu
什么叫大于六十的行啊?

Re: 提取文本中符合条件的行

发表于 : 2010-12-20 18:04
garylao
:em03 这个问题我就给不了很好到答案啦

Re: 提取文本中符合条件的行

发表于 : 2010-12-20 18:06
xiooli

代码: 全选

awk '{if($1>60){print $0}}'  file

Re: 提取文本中符合条件的行

发表于 : 2010-12-20 20:26
syfnet
我用:

代码: 全选

awk '/$1>60/{print $0}' a.txt > b.txt
结果b.txt为空的

Re: 提取文本中符合条件的行

发表于 : 2010-12-20 20:32
xiooli
syfnet 写了:我用:

代码: 全选

awk '/$1>60/{print $0}' a.txt > b.txt
结果b.txt为空的
额,我的错,应该是:

代码: 全选

awk '{if($1>60){print $0}}'  file

Re: 提取文本中符合条件的行

发表于 : 2010-12-20 20:47
syfnet
好了,xiooli。 :em11