traduccion - ls grep




Coincidencia negativa utilizando grep(líneas de coincidencia que no contienen foo) (2)

En su caso, presumiblemente no desea utilizar grep, sino que agregue una cláusula negativa al comando de búsqueda, por ejemplo

find /home/baumerf/public_html/ -mmin -60 -not -name error_log

Si desea incluir caracteres comodín en el nombre, deberá evitarlos, por ejemplo, para excluir archivos con el sufijo .log:

find /home/baumerf/public_html/ -mmin -60 -not -name \*.log

He estado tratando de resolver la sintaxis de este comando:

grep ! error_log | find /home/foo/public_html/ -mmin -60

o

grep '[^error_log]' | find /home/baumerf/public_html/ -mmin -60

Necesito ver todos los archivos que se han modificado, excepto los llamados error_log .

He leído sobre esto aquí , pero solo encontré un patrón not regex.


También puede usar awk para estos fines, ya que le permite realizar verificaciones más complejas de una manera más clara:

Líneas que no contienen foo :

awk '!/foo/'

Líneas que no contienen ni foo ni bar :

awk '!/foo/ && !/bar/'

Líneas que no contienen ni foo ni bar pero que contienen foo2 o bar2 :

awk '!/foo/ && !/bar/ && (/foo2/ || /bar2/)'

Y así.