Utilizar:
find . -type f -size +4096c
para encontrar archivos de más de 4096 bytes.
Y:
find . -type f -size -4096c
para encontrar archivos de menos de 4096 bytes.
Observe la diferencia + y - después del cambio de tamaño.
El -size
interruptor explicó:
-size n[cwbkMG]
File uses n units of space. The following suffixes can be used:
`b' for 512-byte blocks (this is the default if no suffix is
used)
`c' for bytes
`w' for two-byte words
`k' for Kilobytes (units of 1024 bytes)
`M' for Megabytes (units of 1048576 bytes)
`G' for Gigabytes (units of 1073741824 bytes)
The size does not count indirect blocks, but it does count
blocks in sparse files that are not actually allocated. Bear in
mind that the `%k' and `%b' format specifiers of -printf handle
sparse files differently. The `b' suffix always denotes
512-byte blocks and never 1 Kilobyte blocks, which is different
to the behaviour of -ls.
Creo que
find
podría ser útil solo sin canalizar a AWK. Por ejemplo,La tilde indica dónde desea que comience su búsqueda y el resultado debe mostrar solo archivos de más de 2 kilobytes.
Para hacerlo más elegante, puede usar la
-exec
opción para ejecutar otro comando que consiste en enumerar estos directorios con sus tamaños.Para obtener más información, lea la página de manual de
find
.fuente
AWK realmente es bastante fácil para este tipo de cosas. Aquí hay algunas cosas que puede hacer con él en relación con la verificación del tamaño del archivo, como lo pidió:
Lista de archivos de más de 200 bytes:
Liste los archivos de menos de 200 bytes y escriba la lista en un archivo:
Enumere archivos de 0 bytes, grabe la lista en un archivo y elimine los archivos vacíos:
fuente
ls
no es buenotee
y simplemente redirigir a un archivo, comols -l > filelog
(ols -l >> filelog
)?Mayor de 2000 bytes:
Menos de 2000 bytes:
fuente