ls -l --block-size=M
le dará una lista de formato largo (necesaria para ver realmente el tamaño del archivo) y tamaños de archivo redondeados hacia arriba al MiB más cercano.
Si desea unidades MB (10^6 bytes) en lugar de MiB (2^20 bytes), use --block-size=MB
en su lugar.
Si no quieres el M
sufijo adjunto al tamaño del archivo, puede usar algo como --block-size=1M
. Gracias Stéphane Chazelas por sugerir esto.
Si simplemente desea tamaños de archivo en unidades "razonables", en lugar de megabytes específicos , entonces puedes usar -lh
para obtener una lista de formato largo y legible por humanos presentación del tamaño del archivo. Esto usará unidades de tamaño de archivo para mantener los tamaños de archivo presentados con aproximadamente 1-3 dígitos (por lo que verá tamaños de archivo como 6.1K
, 151K
, 7.1M
, 15M
, 1.5G
y así sucesivamente.
El --block-size
el parámetro se describe en la página man de ls; man ls
y busca SIZE
. También permite unidades que no sean MB/MiB, y por lo que parece (no lo intenté) también tamaños de bloque arbitrarios (para que pueda ver el tamaño del archivo como una cantidad de bloques de 429 bytes si lo desea). a).
Tenga en cuenta que tanto --block-size
y -h
son extensiones GNU además del ls
del Open Group , por lo que es posible que esto no funcione si no tiene un espacio de usuario de GNU (que es lo que tienen la mayoría de las instalaciones de Linux). El ls
de GNU Coreutils 8.5 admite --block-size y -h como se describe anteriormente. Gracias a kojiro por señalar esto.
ls -lh
proporciona tamaños de archivo legibles por humanos, formato largo.
Utiliza los sufijos k, M, G y T (o ningún sufijo para los bytes) según sea necesario para que el número sea pequeño, p. 1.4K
o 178M
.
-h
es una extensión GNU coreutils, no un POSIX básico.
Tenga en cuenta que esto no responde la pregunta exactamente como se le preguntó. Si desea tamaños estrictamente en MiB, incluso para archivos pequeños o gigantes, la respuesta de Michael Kjörling lo hace para GNU coreutils ls
.