El dir
comando de listado de directorio de Windows tiene una línea al final que muestra la cantidad total de espacio ocupado por los archivos enumerados. Por ejemplo, dir *.exe
muestra todos los .exe
archivos en el directorio actual, sus tamaños y la suma total de sus tamaños. Me encantaría tener una funcionalidad similar con mi dir
alias en bash, pero no estoy seguro de cómo hacerlo.
Actualmente, tengo alias dir='ls -FaGl'
en mi .bash_profile
, mostrando
drwxr-x---+ 24 mattdmo 4096 Mar 14 16:35 ./
drwxr-x--x. 256 root 12288 Apr 8 21:29 ../
-rw------- 1 mattdmo 13795 Apr 4 17:52 .bash_history
-rw-r--r-- 1 mattdmo 18 May 10 2012 .bash_logout
-rw-r--r-- 1 mattdmo 395 Dec 9 17:33 .bash_profile
-rw-r--r-- 1 mattdmo 176 May 10 2012 .bash_profile~
-rw-r--r-- 1 mattdmo 411 Dec 9 17:33 .bashrc
-rw-r--r-- 1 mattdmo 124 May 10 2012 .bashrc~
drwx------ 2 mattdmo 4096 Mar 24 20:03 bin/
drwxrwxr-x 2 mattdmo 4096 Mar 11 16:29 download/
por ejemplo. Tomando las respuestas de esta pregunta :
dir | awk '{ total += $4 }; END { print total }'
lo que me da el total, pero no imprime el listado del directorio en sí. ¿Hay alguna manera de alterar esto en una línea de comandos o script de shell para que pueda pasar cualquier ls
argumento que desee dir
y obtener una lista completa más la suma total? Por ejemplo, me gustaría ejecutar dir -R *.jpg *.tif
para obtener la lista y el tamaño total de esos tipos de archivos en todos los subdirectorios. Idealmente, sería genial si pudiera obtener el tamaño de cada subdirectorio, pero esto no es esencial.
ls -lh
está imprimiendo el 'total' , pero no siempre está relacionado con lo que awk
calculan los siguientes scripts o lo que sumo a mano. A veces está cerca del número de KB de archivos en el directorio, pero no parece tener vigencia los tamaños asignados de subdirectorios. Le agradecería que me indicara una explicación de qué es exactamente ese número ...
ls -lh
no muestra el tamaño total de un directorio calculando su contenido
ls -lh
te ayuda? Imprime la suma total en la parte superior. También puede ejecutardu -sh *.exe
para obtener información sobre el uso del espacio en disco en forma legible para humanos.