3

当我做:

$ find / 

它搜索整个系统。
我该如何防止呢?

(这个问题来自另一个问题的“答案”。)

4

5 回答 5

9

考虑:

-maxdepth n
             True if the depth of the current file into the tree is less than
             or equal to n.

-mindepth n
             True if the depth of the current file into the tree is greater
             than or equal to n.
于 2008-08-25T23:04:08.007 回答
4

天,

只是想扩展 Jon 使用 -prune 的建议。它不是最容易使用的查找选项,例如仅在当前目录中搜索查找命令如下所示:

find . \( -type d ! -name . -prune \) -o \( <the bit you want to look for> \)

这将阻止 find 下降到该目录中的子目录。

基本上,它说,“修剪任何目录,其名称不是“。”,即当前目录。

find 命令对当前目录中找到的每个项目从左到右进行评估,因此在完成第一个元素(即修剪段)后,它将继续处理第二个 -o (OR'd) 表达式中匹配的项目。

HTH。

干杯,罗伯

于 2008-08-26T14:55:46.377 回答
3

使用通配符可能会更好。例如,如果要查找当前目录中的所有 ksh 脚本:

$ ls *.ksh
于 2008-08-25T23:02:28.290 回答
0

使用-prune选项。

于 2008-08-25T22:59:10.623 回答
0

你甚至可以做

echo /specific/dir/*.jpg

因为它是扩展通配符的外壳。打字

ls *.jpg

相当于打字

ls foo.jpg bar.jpg

给定的 foo.jpg 和 bar.jpg 是当前目录中所有以“.jpg”结尾的文件。

于 2008-08-26T00:32:53.283 回答