Estoy obteniendo resultados de du -h
la siguiente manera:
103M ./.wine/drive_c/windows/mono/mono-2.0/lib/mono
103M ./.wine/drive_c/windows/mono/mono-2.0/lib
129M ./.wine/drive_c/windows/mono/mono-2.0
129M ./.wine/drive_c/windows/mono
362M ./.wine/drive_c/windows
545M ./.wine/drive_c
Me gustaría mostrar solo la carpeta más procesable, que es la carpeta ./.wine/drive_c/windows/mono/mono-2.0/lib/mono
¿Hay alguna forma de eliminar la carpeta principal si una carpeta secundaria es responsable de la mayor parte del uso del espacio en disco?
Una configuración para mostrar solo las carpetas de hojas podría ser útil, o una configuración para restar el tamaño de todas las subcarpetas de una carpeta principal al calcular el tamaño de la carpeta principal.
disk-usage
EoghanM
fuente
fuente
Respuestas:
Si está utilizando GNU du, puede usar la opción
-S
o--separate-dirs
para no incluir el tamaño de los subdirectorios al calcular el uso para el padre.Su
du
comando puede no ser compatible con esta opción.Puede usar esta pareja con sort para obtener los directorios individuales más grandes (suponiendo herramientas GNU):
fuente
Personalmente, solo lo combino con el poder del género GNU:
Esto hará que los tamaños se ordenen en un formato legible para humanos. Por ejemplo:
De
man sort
:Todavía muestra los que no te importan, pero ahora es muy fácil encontrar los que sí.
fuente
545M ./.wine/drive_c
en la parte superior de la lista, a pesar de que solo contiene carpetas y ningún archivo, y hace que sea más difícil ver cómo se distribuye el espacio entre las subcarpetas (recursivas) de drive_c porque no No aparecen consecutivamente en la lista.Si solo está buscando una vista claramente organizada, le recomiendo el
durep
paquete.Salida de ejemplo:
Use el
-td
parámetro para especificar la profundidad máxima y el-hs
parámetro para especificar un tamaño mínimo para que una carpeta aparezca en los resultados.fuente
En realidad, no estoy seguro si esto es lo que quiere, pero se puede despojar a los directorios padre usando GNU
find
's-execdir
:La
-execdir
opción es similar-exec
pero ejecuta el comando que proporciona en el subdirectorio dondefind
ha encontrado un archivo.fuente
Si está utilizando
du
una profundidad fija, por ejemplodu -m -d 2 .
, podría enmascarar líneas que no alcanzan su profundidad máxima de la siguiente manera:En este caso, quería una profundidad de 2 directorios, así que solo mantuve los resultados con 3 campos como se define con la
awk
palabra claveNF
después de especificar"/"
como mi separador de campo al comienzo.fuente
Estos dos funcionan para mí:
fuente