Estoy tratando de encontrar archivos con un tamaño mayor que "x", por ejemplo: 32 bytes
Pero lo que encontré en ls --help fue solo ls -S , que solo clasificó por tamaño y no satisfizo mi demanda
Soy nuevo en Linux, probé Google pero no sé qué palabras clave debo usar para encontrar la respuesta, ¿alguien podría darme un consejo? ¡Gracias!
Trate de usar el poder de la utilidad de find .
Encuentra archivos de más de 32 bytes:
find -size +32cPor supuesto, también puede solicitar archivos de menos de 32 bytes:
find -size -32cY archivos con 32 bytes exactos:
find -size 32cPara archivos con 32 bytes o más:
find -size 32c -o -size +32cO no menos de 32 bytes (lo mismo que arriba, pero escrito de otra manera):
find ! -size -32cY archivos entre 32 y 64 bytes:
find -size +32c -size -64cY también puedes aplicar otros sufijos comunes:
find -size +32k -size -64MPrueba esto:
find . -size +32c -lsPuedes cambiar 32 por la talla que quieras. En este caso, usé tu ejemplo.
Explicación : use el comando Unix find usando -size oprator
La utilidad de búsqueda desciende recursivamente por el árbol de directorios para cada ruta enumerada, evaluando una expresión (compuesta por 'principales' y 'operandos') en términos de cada archivo en el árbol.
Solución: Según la documentación.
-size n[ckMGTP] True if the file's size, rounded up, in 512-byte blocks is n. If n is fol- lowed by ac, than the primary is true if the file's size is n bytes (charac- ters). Similarly if n is followed by a scale indicator than the file's size is compared to n scaled as: k kilobytes (1024 bytes) M megabytes (1024 kilobytes) G gigabytes (1024 megabytes) T terabytes (1024 gigabytes) P petabytes (1024 terabytes) Uso: realice la operación de find con el indicador de -size y los argumentos de medición del umbral: más que (+)/menor que (-), número (n) y tipo de medición (k/M/G/T/P).
Fórmula : find <path> -size [+/-]<Number><Measurement>
Ejemplos:
1. Mayor que : busque todos los archivos en mi directorio actual (.) que superen los 500 kilobytes
find . -size +500k2. Menos de : busque todos los archivos en mi directorio actual (.) que tengan menos de 100 megabytes.
find . -size -100M3. Rango : encuentre un archivo específico (prueba) en mi directorio actual (.) mayor a 500 kilobytes menor a 100 megabytes (500k-1000k)
find . -name "test" -size +500k -size -100M 4. Rango complejo con Regex Encuentre todos los archivos .mkv en todos los sistemas de archivos (raíz /) que tengan más de 1 gigabyte y se hayan creado este mes, y presente información sobre ellos.
find / -name "*.mkv" -size +1G -type f -ctime -4w | xargs ls -la