Hice:grep -r -H -L txt ~
Ygrep -r -l -L txt ~
¿Enumera todos los archivos? Porque estoy obteniendo un resultado muy largo.
Respuesta1
Sus dos comandos son exactamente iguales... ambos se repiten a través de su directorio de inicio y enumeran archivos que no contienen el patrón 'txt'.
Para demostrar que tienen el mismo resultado, puedes hacer
diff <(grep -r -H -L txt ~) <(grep -r -l -L txt ~)
Desmenuzándolo un poco...
grep -r -H -L
es lo mismo que
grep -r -L
-H
(imprimir nombres de archivos) está implícito en cualquier grep
llamada que involucre más de un archivo. Eso es lo que -L
hace, ya que enumera todos los archivos que no coinciden con el patrón especificado.
Próximo...
grep -r -l -L
es lo mismo que
grep -r -L
Esto se debe simplemente al hecho de que -l
y -L
son opciones en conflicto y, en tales casos, el último indicador que aparece anula cualquier indicador anterior en conflicto. (Gracias a@don_crisstipor señalar esto.)
Entonces, en efecto, tienes grep -r -L
y grep -r -L
.