find . -exec grep -l 'string' {} \; -print 2>/dev/null

2915

it lists all files in "." that contain the string "string" but don't show dirs with permission denied.

What would it be the equivalent of that but squeezing xargs in between?

2
Warum willst du Xargs dazwischen? Andrew Bolster vor 14 Jahren 1
@Closers: Shell-Scripting programmiert; Dies könnte für SO leichter geeignet sein als für SU (es hängt von anderen Details ab, die das OP noch nicht bereitgestellt hat). vor 14 Jahren 0

3 Antworten auf die Frage

1
Eddy Pronk
find . -readable | xargs grep -l 'string' 
0
user31894

you can just use grep if it has -R option

grep -R -l "string" * 2>/dev/null 
0
Jonathan Leffler
find . -type f -print0 | xargs -0 grep -l 'string' 

This handles names with blanks (etc) in the file names - and assumes you are using GNU find and xargs.