Unix查找命令目录提示

时间:2016-07-25 19:26:28

标签: linux macos unix solaris

我是find命令的活跃用户,类似于以下格式:

find . -name '*servername*' -exec zgrep -l 'identifier'  {} \;

假设我有一个提示,目标文件可能位于名为abc的目录中,是否可以在find命令或其任何组合中接受提示?

例如,如果搜索首先在名为abc的子目录中搜索,则有更多机会查找结果,如果需要,我可以中断搜索操作。

我正在寻找一些类似的命令:

find --hint dir1|pattern1 . -name '*servername*' -exec zgrep -l 'identifier'  {} \;

2 个答案:

答案 0 :(得分:1)

也许这就是你想要的:

find $(find . -type d -name abc
      ) -name '*servername*' -exec zgrep -l 'identifier' {} +

演示:

$ mkdir /tmp/demo
$ cd /tmp/demo
$ mkdir -p a/b/abc 
$ echo identifier | gzip > a/b/abc/one_servername.gz
$ find $(find . -type d -name abc
        ) -name '*servername*'-exec zgrep -l 'identifier' {} +
./a/b/abc/one_servername.gz

答案 1 :(得分:0)

您可以在find中使用多个搜索目录,它将按照提供的顺序查看它们:

find dir1 dir2 dir3 -name '*servername*' -exec zgrep -l 'identifier'  {} \;