找到该文件夹​​以及包含我的字符串的文件名?

时间:2015-04-13 21:25:15

标签: linux search text grep find

我需要找到文件夹名称以及在其内容中包含我的字符串的文件名。我在这个目录" /data/queue/data"我在同一个目录中有很多文件夹,在每个文件夹里面,我有各种文件。

我想运行一个命令,可以找到我的文件夹名称和文件名,其中包含一个特定的字符串,如#34; badezimmer"在他们的内容。最快的方法是什么?

以下是此目录中的文件夹" /data/queue/data"每个文件夹中都有各种文件。

david@machineA:/data/queue/data$ ls -lrth
drwxr-xr-x 2 david david  12K Apr 11 18:58 1428800400
drwxr-xr-x 2 david david  12K Apr 11 19:58 1428804000
drwxr-xr-x 2 david david  12K Apr 11 20:58 1428807600

我想只从这个目录运行一个命令 - " / data / queue / data"如果文件夹的名称和文件名在其内容中包含我的字符串,则可以打印该文件夹的文件夹名称和文件名。

david@machineA:/data/queue/data$ some command to find the folder and files which has my string.

1 个答案:

答案 0 :(得分:2)

如上所述,以下内容将满足您的需求:

grep -rl 'badezimmer' /data/queue/data

来自grep(1)的手册页:

-l, --files-with-matches
       Suppress  normal  output;  instead  print  the  name of each input file from which output would normally have been
       printed.  The scanning will stop on the first match.

-r, --recursive
       Read all files under each directory, recursively, following symbolic links only if they are on the  command  line.
       This is equivalent to the -d recurse option.