在bash脚本中使用cat非常慢

时间:2014-12-26 14:02:03

标签: bash grep cat io-redirection

我有非常大的文本文件(~50,000),我必须对其进行一些文本处理。基本上运行多个grep命令。 当我手动运行它时会立即返回,但是当我在bash脚本中执行相同操作时 - 需要花费很多时间。我在下面的bash脚本中做错了什么。我将文件名作为命令行参数传递给脚本

示例输入数据:

BUSINESS^GFR^GNevil
PERSONAL^GUK^GSheila

应该出现在文件中的输出 - BUSINESS ^ GFR ^ GNevil

经过一段时间后,它开始在终端上打印出整个文件。我如何抑制它?

#!/bin/bash
cat $2 | grep BUSINESS 

1 个答案:

答案 0 :(得分:1)

请勿将cat与可以读取文件本身的程序一起使用 它减慢了速度,你失去了功能:

grep BUSINESS test | grep '^GFR|^GDE'

或者您可以使用awk

执行此操作
awk '/BUSINESS/ && /^GFR|^GDE/' test