¿Cuál es el total
en la salida de ls -l
?
$ ls -l /etc
total 3344
-rw-r--r-- 1 root root 15276 Oct 5 2004 a2ps.cfg
-rw-r--r-- 1 root root 2562 Oct 5 2004 a2ps-site.cfg
drwxr-xr-x 4 root root 4096 Feb 2 2007 acpi
-rw-r--r-- 1 root root 48 Feb 8 2008 adjtime
drwxr-xr-x 4 root root 4096 Feb 2 2007 alchemist
man ls
en mi sistema no menciona esa línea, peroinfo coreutils ls
sí. ¿Cómo vieneman ls
yinfo coreutils ls
tiene información diferente sobre el mismo comando? ¿Por qué nols
solo se documenta una vez? Tener dos documentaciones diferentes para el mismo comando parece estar preparado para el fracaso.info
Los documentos para las cosas de Coreutils son a menudo más detallados que las páginas de manual. Es por eso que tienen una nota al final de cada página de manual que lo remite a la sección de información para obtener más detalles.info ls
para dar el mismo resultado queinfo coreutils ls
. ¿Qué hace el argumentocoreutils
?La Fórmula: ¿Cuál es ese número?
¿Por qué tan confuso?
Este número está bastante separado de cualquier métrica física o significativa. Muchos programadores junior no han tenido experiencia con agujeros de archivo o enlaces hard / sym . Además, la documentación disponible sobre este tema específico es prácticamente inexistente.
La desarticulación y la ambigüedad del término "tamaño de bloque" ha sido resultado de numerosas medidas diferentes que se confunden fácilmente, y los niveles relativamente profundos de abstracción giran en torno al acceso al disco.
Ejemplos de información conflictiva:
du
(ols -s
) vsstat
La ejecución
du *
en una carpeta de proyecto produce lo siguiente: (Nota:ls -s
devuelve los mismos resultados).Total : 2 + 2 + 1 + 3 + 3 + 5 + 26 + 4 + 2 + 14 = 62 bloques
Sin embargo, cuando uno corre
stat
, vemos un conjunto diferente de valores. Ejecutarstat
en el mismo directorio produce:Total: 3 + 3 + 1 + 5 + 6 + 10 + 51 + 8 + 3 + 28 = 118 bloques
Hay dos cosas importantes para llevar:
stat
informa tanto elphysical_blocks_in_use
yphysical_block_size
como se utiliza en la fórmula anterior. Tenga en cuenta que estos son valores basados en las interfaces del sistema operativo.du
proporciona lo que generalmente se acepta como una estimación bastante precisa de la utilización del disco físico.Como referencia, aquí está el
ls -l
directorio de arriba:fuente
Esa es la cantidad total de bloques del sistema de archivos, incluidos los bloques indirectos, utilizados por los archivos enumerados. Si ejecuta
ls -s
los mismos archivos y suma los números informados, obtendrá ese mismo número.fuente
/bin/ls -s
->total 15 2 filename 3 filename2 3 filename3 3 filename4 2 filename5 2 filename6 2 filename8 2 filename9
Solo para mencionar: puede usar -h (ls -lh) para convertir esto en formato legible para humanos.
fuente