如何使用linux命令以递归搜索的方式找到给定目录下具有特定位置的文件名列表

时间:2019-07-18 09:33:12

标签: linux bash shell

我正在研究Linux脚本。我坚持列出给定目录下的所有文件的地方(具有追溯性匹配)。 下面是代码:

find /* -type f -exec grep -l 'FY10' {} \;

它将列出所有以FY开头的文件名,例如FY10FY11等。我只需要FY10个文件位置。

2 个答案:

答案 0 :(得分:1)

嘿,你要走很长的路。

find <base path> -type f -name FY10*

使用-name,您可以提供无需执行exec grep即可进行搜索的模式。

答案 1 :(得分:0)

您可以稍微修改命令:

find . -name 'FY10*' -type f

这将当前目录用作起始目录,并递归搜索名称为FY10的文件。

在这种情况下,不需要使用-exec grep,因为find命令可以使用-name选项仅自动搜索具有给定模式的文件。