Ir al contenido principal

Como obtener un listado del espacio ocupado desde la consola de Linux ordenado de mayor a menor


Command Line Ninjitsu en Maldito Nerd
Necesitás un listado detallado de cuanto ocupa cada directorio en Linux, y lo necesitás ordenado de mayor a menor. ¿Como? Facil:
root@floyd:~# du /home/pink --max-depth=1 | sort -nr | cut -f2 | xargs -d '\n' du -sh
Que te dará por resultado algo como esto:
  65G     /home/pink
  23G     /home/pink/Descargas
  15G     /home/pink/Documentos
  9,0G    /home/pink/Imágenes
  7,9G    /home/pink/ordenar
  6,6G    /home/pink/videos
  4,0G    /home/pink/Música
Actualización – 13/02/2012: Nitsuga en los comentarios de este post se materializó con una idea bastante mejorcita que combina du con sort únicamente y obtiene el mismo resultado final:
du /home/pink/ --max-depth=1 -h | sort -rh
¡Un aplauso para Nitsuga, che!
Ahora si, a continuación, la explicación de como funciona el método largo e inmemorizable.
¿Como funciona?
Se usa du para obtener el espacio ocupado por cada directorio contenido dentro del que se especificó con un máximo de profundidad de 1 nivel (por lo de –max-depth=1) y se le pasa el resultado al comando sort por medio de un pipe.
Sort se encargará de ordenar numéricamente (por lo de –n) y de forma inversa, es decir de mayor a menor (por lo de –r) el resultado obtenido, que se le pasa al comando cut por medio de otro pipe.
Cut deja solamente el contenido del segundo campo y se deshace del resto (por lo de –f2), es decir, ahora que ya está ordenado, se deshace del número y deja solamente el nombre del directorio o archivo en cuestión.
Otro pipe de por medio, xargs va ejecutando du –sh sobre cada uno de los directorios pre ordenados y mostrando el resultado en pantalla usando para delimitar un un argumento de otro el el salto de línea, (por lo de –d ‘\n’).
¿Lo entendiste?
Si lo entendiste te felicito, yo lo tuve que pensar bastante cuando lo ví usar por primera vez (No, no es de mi autoría).
Si no lo entendiste y no tenes ganas o tiempo de entenderlo ya mismo, acordate: Lo viste en Maldito Nerd, o agendate esta página en tus bookmarks, que si te pasa como a mi, lo vas a necesitar un par de veces al año y no te vas a acordar de como carajo era todo el comando.
¿Y si uso Windows en vez de Linux pero igualmente quiero hacerlo por consola?
Bueno, no se puede logar exactamente el mismo resultado pero algo muy parecido se obtiene ejecutando:
dir /S /O-S
Si, así de cortito. Eso demuestra a las claras la superioridad de Windows sobre Linux. No necesito mas pruebas. (Cualquier parecido entre las opciones que le paso al comando dir y la llamada internacional de auxilio es pura coincidencia).

Entradas populares de este blog

Fallo al obtener la lista de compartición del servidor

 - Ubuntu Karmic Koala El problema. El detalle es que a veces tengo que revisar archivos que están en otras computadoras que utilizan windows. Al momento de darle en el menú Lugares - Red - Red de Windows y al elegir el grupo de trabajo en el que están mis equipos me aparece el siguiente error. No se puede montar el lugar. Fallo al obtener la lista de compartición del servidor. La solución . La encontré en este articulo de los Foros de Ubuntu, lo voy a copiar tal cual, espero que no le moleste al autor y solo a manera de respaldo. # — Aquí inicia el articulo de los foros de Ubuntu – 1- En principio es necesario que estén instalados: samba samba-common smbclient winbind   2- Luego editar el archivo /etc/samba/smb.conf sudo gedit /etc/samba/smb.conf   A los cambios necesarios para adaptar el sistema, según los tutoriales de samba es necesario tener presente que: a- Donde dice workgroup = WORKGROUP, reemplazar WORKGROUP por el nombre de grupo de ...

Rootear en Ubuntu un teléfono Android

Tengo un teléfono con Android, concretamente un Motorola Defy, y resulta que en Android, basado en Linux, eres un simple usuario y solo puedes realizar algunas tareas. Otras te están vetadas. Conseguir los permisos de superusuario, se llama entre los entendidos rootear el móvil. En principio es una operación que no entraña riesgos, pero en esta vida todo puede fallar. Así que debe quedar claro que si decides rootear el teléfono, lo haces bajo tu propia responsabilidad. También debes entender, que si rooteas el teléfono, los SAT aprovechan para lavarse las manos de cualquier problema y anular la garantía. Y por último, debes saber que es posible que ya no recibas las actualizaciones automáticas de Android. Para rootear teléfonos se utiliza una aplicación llamada Superoneclick . En mi caso, esta parece ser la única solución. Pero este es un programa para Windows, por lo que.... Afortunadamente, esta escrito en .NET, por lo que vamos a poder ejecutarlo con MONO en nuestro ...

Descargar Packet Tracer 5.2 [Windows y Linux]

Packet Tracer 5.2 [Windows y Linux] Packet Tracer es la herramienta de aprendizaje y simulación de redes interactiva para los instructores y alumnos de Cisco CCNA. Esta herramienta les permite a los usuarios crear topologías de red, configurar dispositivos, insertar paquetes y simular una red con múltiples representaciones visuales. Packet Tracer se enfoca en apoyar mejor los protocolos de redes que se enseñan en el currículum de CCNA. Este producto tiene el propósito de ser usado como un producto educativo que brinda exposición a la interfaz comando – línea de los dispositivos de Cisco para practicar y aprender por descubrimiento. Packet Tracer 5.2 es la última versión del simulador de redes de Cisco Systems, herramienta fundamental si el alumno está cursando el CCNA o se dedica al networking. En este programa se crea la topología física de la red simplemente arrastrando los dispositivos a la pantalla. Luego clickando en ellos se puede ingresar ...