Abstract Circle Asked: 2018-11-12 19:30:20 +0800 CST2018-11-12 19:30:20 +0800 CST 2018-11-12 19:30:20 +0800 CST Grep 多个文件的内容 772 我的操作系统是 Sun Solaris。SunOS sintscdldmu001 5.11 11.3 sun4v sparc sun4v 我下了命令alter database backup controlfile to trace;,碰巧忘记了。 当我需要控制文件的内容时,我开始搜索它。现在我想要类似的东西grep *.trc | grep -i 'CONTROLFILE' 在哪个文件下找到我的控制文件内容的正确命令是什么? solaris database 3 个回答 Voted Best Answer Nasir Riley 2018-11-12T19:52:55+08:002018-11-12T19:52:55+08:00 grep -l 这将打印文件的名称和匹配的行。它不会为多个匹配项重复文件名。 如果您要查找的字符串是 CONTROLFILE 那么您可以这样做: grep -li CONTROLFILE /path/to/trcfiles/* 这将输出包含字符串 CONTROLFILE 的文件的名称和匹配行。如果该字符串在 .trc 文件中并且这就是您想要返回的全部内容,则将其通过管道传输到命令的末尾。 grep -li CONTROLFILE /path/to/trcfiles/* | grep *.trc Sekar Ramu 2018-11-12T23:01:44+08:002018-11-12T23:01:44+08:00 如果要在其余文件中搜索关键字“控制文件”,请使用以下命令,注意 -i 使搜索不区分大小写 grep -i "controlfile" *.trc 但是如果 controlfile 是一个文件,它有一些要在其余文件中搜索的模式,那么您将必须传递 controlfile 的内容,如下所示 grep -f controlfile *.trc 这将在其余 trc 文件中搜索 controlfile 的内容。 如果您位于文件所在的同一文件夹中,则只需将 *.trc 作为最后一个参数,否则相应地给出绝对/相对路径。如果您想从路径开始递归搜索其余文件夹中存在的文件,请使用 -r 参数。 naren viru 2018-11-13T01:52:09+08:002018-11-13T01:52:09+08:00 您可以使用如下所示来识别哪个文件包含您的搜索文本 grep -il <control file entry> <path where trc files are located> *
这将打印文件的名称和匹配的行。它不会为多个匹配项重复文件名。
如果您要查找的字符串是 CONTROLFILE 那么您可以这样做:
这将输出包含字符串 CONTROLFILE 的文件的名称和匹配行。如果该字符串在 .trc 文件中并且这就是您想要返回的全部内容,则将其通过管道传输到命令的末尾。
如果要在其余文件中搜索关键字“控制文件”,请使用以下命令,注意 -i 使搜索不区分大小写
但是如果 controlfile 是一个文件,它有一些要在其余文件中搜索的模式,那么您将必须传递 controlfile 的内容,如下所示
这将在其余 trc 文件中搜索 controlfile 的内容。
如果您位于文件所在的同一文件夹中,则只需将 *.trc 作为最后一个参数,否则相应地给出绝对/相对路径。如果您想从路径开始递归搜索其余文件夹中存在的文件,请使用 -r 参数。
您可以使用如下所示来识别哪个文件包含您的搜索文本