我需要找到文件夹名称以及在其内容中包含我的字符串的文件名。我在这个目录" /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.
答案 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.