ls -lthr | awk '{if ($5 != 0) print}'
Con esta instrucción lo que haremos es listar todos los archivos de un directorio ordenados por fecha, la mas reciente abajo, y que el campo del listado número 5, es decir el del tamaño sea diferente de cero y con print escribiremos la linea por pantalla.
Éste, por ejemplo, seria el primer listado ordenado por fecha donde se ven dos archivos con tamaño 0
Y este listado ya se ve sin ceros
El filtro aplicado {if ($5 != 0) print, en número 5 es la posición que ocupa el tamaño, de esta forma podriamos realizar el filtro por cualquier otra posición, por ejemplo, mostrar solo tengan la extensión .log ls -lthr | awk '{if ($9 = "*.log") print}'
Y si queremos listar los que tienen 0 bytes para borrarlos podemos hacerlo así:
find . -maxdepth 1 -size 0c
Y después borrarlos:
find . -maxdepth 1 -size 0c -delete
Y esto es todo amigos!!
Gracias por seguirme y leerme, espero que les haya ayudado
Saludos
Alex.