如何在文件中搜索模式并在终端上显示该行?

时间:2011-09-26 11:56:39

标签: linux grep

我喜欢以下内容:

pid 4565 Process: /my/name/is/4678 +34787[d]sfh888dwe4rtertfsj@##$
pid 33453 Process: /my/name/is/4678 +34787[d]sfh888dfsj@##werwer$
pid 3453345 Process: /my/name/is/4678 +3478[7]dsfhew46534wy6888dfsj@##$
pid 12335 Process: /my/name/is/4678 +3478se[r]tet57dsfh888dfsj@##$

我需要线路“+34787 [d] sfh888dfsj @ ## werwer $”这种模式,需要在终端上获得整行,或者可以重定向到另一个文件。有什么建议吗? 提前谢谢。

2 个答案:

答案 0 :(得分:1)

使用固定字符串模式的grep(aka fgrep):

grep -F '+34787[d]sfh888dfsj@##werwer$' /path/to/my/file

运行man grep了解详情。

如果您需要将其重定向到某个输出文件而不是标准输出:

grep -F '+34787[d]sfh888dfsj@##werwer$' /path/to/my/file > /path/to/my/output

运行man shman bash并阅读有关重定向的信息。

答案 1 :(得分:0)

grep / awk / sed ...许多工具都可以做到这一点。 grep例子:

 kent$  echo "pid 4565 Process: /my/name/is/4678 +34787[d]sfh888dwe4rtertfsj@##$
    pid 33453 Process: /my/name/is/4678 +34787[d]sfh888dfsj@##werwer$
    pid 3453345 Process: /my/name/is/4678 +3478[7]dsfhew46534wy6888dfsj@##$
    pid 12335 Process: /my/name/is/4678 +3478se[r]tet57dsfh888dfsj@##$"|grep '\+34787\[d\]sfh888dfsj@##werwer\$'

    pid 33453 Process: /my/name/is/4678 +34787[d]sfh888dfsj@##werwer$