En Unix (Tru64), ¿cómo hago para que el ls
comando muestre el tamaño del archivo en megabytes? Actualmente puedo mostrarlo en bytes usando lo siguiente:
ls -la
command-line
unix
ls
mega
phuclv
fuente
fuente
ls --block-size=M
imprime los tamaños en megabytes pero muestra 1 MB también para cualquier cosa por debajo de 1 MB Sin embargo, no estoy seguro de si esta opción es aceptable en su versión UNIX de ls.En realidad,
ls -lh
también imprime tamaños en Gigabytes si el archivo es lo suficientemente grande (Bueno, de todos modos: en Linux 64 bits esto funciona:>)En un nodo lateral:
du -sh *
imprime también los tamaños de directorio en el directorio actual.fuente
ls -h
tiene sentido después de que un archivo crece más de 1 GB, así que uso este comando en un bucle de 1 segundo:while true ; do ls -al --block-size=M ; sleep 1 ; done
Tendrás que usar
awk
para hacer los cálculos por ti:Esto no afectará la salida de archivos que son más pequeños que
mega
.Es posible que deba ajustar el número de campo para que coincida con la forma en que
ls
se presenta Puede cambiarmega
a "1000000" si esa es su preferencia.Esto imprimirá más decimales de los que probablemente desee. Podría implementar una función de redondeo.
fuente
ls -lh
ols --block-size=M
, ¡pero AWK es muy útil!intente
ls -shR
con el formato recursivo legible por humanos.fuente
-h
en Tru64 , y lo hizo más de dos años antes de que se publicara esta respuesta.prueba
ls -lash
, imprime tamaños en formato legible para humanosfuente
du -sm filename.txt
fuente
También puedes escribir
Esto mostrará una lista de todas las carpetas en el directorio actual, con formato legible, incluidos los tamaños de archivo más familiares en Kb, Mb, Gb.
fuente
Si solo desea el tamaño de un archivo específico, entonces el comando, una extrapolación trivial de las respuestas anteriores, es:
-s
es para el tamaño yh
es para lectura humana (como se mencionó anteriormente varias veces).La salida se verá así:
Si omite los nombres de archivo, enumerará el directorio, colocando el tamaño de cada archivo junto a su nombre, no muy diferente de lo que
ls -la
hace cuando se invoca sin argumentos de nombre de archivo.Espero que esto ayude.
fuente
-h
opción no existe enls
ese sistema.Para el
--block-size
parámetro:MB
para 10 ^ 6M
por 2 ^ 20fuente
1MB
. Por esta razón, me parecióls -l --block-size=kB
más útil.Si solo está interesado en el tamaño del archivo y no tiene que usar el
ls
comando, intente lo siguiente:Esto imprimirá el tamaño del archivo sin la necesidad de analizar nada.
fuente