¿Qué comando conciso puedo usar para encontrar todos los archivos que NO contienen una cadena de texto?
Intenté esto (usando -v para invertir los parámetros de grep) sin suerte:
find . -exec grep -v -l shared.php {} \;
Alguien dijo que esto funcionaría:
find . ! -exec grep -l shared.php {} \;
Pero no parece funcionar para mí.
Esta página tiene este ejemplo:
find ./logs -size +1c > t._tmp
while read filename
do
grep -q "Process Complete" $filename
if [ $? -ne 0 ] ; then
echo $filename
fi
done < t._tmp
rm -f t_tmp
Pero eso es engorroso y nada conciso.
ps: sé que grep -L *
esto hará esto, pero cómo puedo usar el comando find en combinación con grep para archivos excluidos es lo que realmente quiero saber.
pss: Tampoco estoy seguro de cómo incluir grep subdirectorios con la grep -L *
sintaxis, pero todavía quiero saber cómo usarlo con find
:)