在多个目录中的文件中搜索信息

时间:2011-09-30 07:48:46

标签: linux unix search directory grep

我需要检查位于不同位置的多个文件以获取特定信息。

那么,如何创建一个通过多个目录检查参数字的脚本?

目录位于不同的位置。对于前。

/家庭/ CHECK1 /

/选择/记录/

的/ var /状态/

5 个答案:

答案 0 :(得分:1)

使用grep -R(递归)选项并为grep提供多个目录参数。

答案 1 :(得分:1)

最简单的,归结为

find . -name '*.c' | xargs grep word

在当前目录及以下的所有.c文件中查找给定单词。

grep -R也可能适合您,但如果您不想搜索所有文件,则可能会出现问题。

答案 2 :(得分:1)

你也可以(在'发现'旁边) 做一个

for DIR in /home/check1 /opt/log /var/status ; do 
    grep -R searchword $DIR; 
    done

答案 3 :(得分:0)

尝试使用搜索词和目录查找http://content.hccfl.edu/pollock/Unix/FindCmd.htm

答案 4 :(得分:0)

grep的手册页应该解释你需要什么。无论如何,如果你需要递归搜索,你可以使用:

grep -R --include=PATTERN "string_to_search" $directory

您也可以使用:

--exclude=PATTERN to skip some file
--exclude-dir=PATTERN to skip some directories

另一个选项是使用find获取文件并将其传递给grep以搜索字符串。