cómo usar du para ver archivos mayores que un tamaño de umbral

9

Tengo algunas situaciones en las que no veo nada en las páginas del manual.

1) Quiero ver archivos en un subdirectorio que son más grandes que un tamaño particular solamente. 2) Utilizo du -sh> du_output.txt. Veo la salida como se describe para la opción -s y -h, sin embargo, lo que más me interesa es si la salida viene en un formato, por ejemplo

 dir0--->dir1-->dir3-->dir4 
       |             | 
       ->dir2        |-file1
                     |-file2

si lo anterior es el diseño del directorio y solo quiero ver el tamaño de los directorios individuales en todos los subdirectorios, entonces qué puedo hacer (la profundidad de cada subdirectorio es variable)

Enlace
fuente

Respuestas:

5

Me gusta la utilidad gt5 . Utiliza la salida de duy crea una lista navegable de directorios y sus tamaños, y utiliza un navegador en modo de texto, como enlaces para mostrar la información.

Ambos programas están disponibles en los repositorios de Ubuntu: gt5 y enlaces .

captura de pantalla de gt5

Pausado hasta nuevo aviso.
fuente
Gracias, gt5 se ve muy interesante. Lo voy a instalar ahora. Por supuesto, también hay "baobab" para GUI.
SabreWolfy
22

Para mostrar solo carpetas de más de 1 GB de tamaño:

du -h --threshold=1G

También es posible que desee ordenar por tamaño, para encontrar fácilmente los más grandes.
du -h --threshold=1G | sort -h

(Funciona en: Ubuntu / Mint.
No funciona en: OSX o RHEL 6.2)

Mtl Dev
fuente
2
Lástima --thresholdque no funcione en OS X.
Franklin Yu
Tampoco funciona en RHEL 6.2
Matthew Moisen
También en Ubuntu dice que sort -hnhn son incompatibles.
Scott Stafford
1
@ScottStafford Gracias por eso, error tipográfico, corregido. Debería haber leído solosort -h
Mtl Dev
¿Cómo mostrar archivos de más de 500 KB? (en lugar de carpetas)
Alexander Mills
12

Use el comando find en su lugar. El siguiente ejemplo le mostrará todos los archivos que tengan más de 10 megabytes:

find -size +10M

Puede usar du con find como este para ver el tamaño de cada archivo:

find -size +10M -exec du -sh {} \;
Carson
fuente
0

find /path/to/folder -size +100k

No está claro si desea ver el tamaño de los archivos individuales que son más grandes que algún valor, o si desea ver carpetas más grandes que algún valor.

SabreWolfy
fuente
ambas cosas. Básicamente tengo que hacer un informe y en eso tengo que representarlo de 2 maneras que usted señaló.
Bono
Creo que gt5 mencionado anteriormente puede ser lo que estás buscando.
SabreWolfy
0

Veo la respuesta de Mtl Dev adecuada para esta pregunta. Desde que Bond abrió este hilo con la etiqueta 'linux' y 'ubuntu-10.04'.
De nuevo, du -h --threshold=1G(seguido de forma | sort -hopcional) funciona perfectamente en Ubuntu.

Aunque, Bond dijo que,

No veo nada en las páginas del manual.

Hay dos líneas en la página del manual, consulte a continuación.

-t, --threshold = SIZE
excluye entradas menores que SIZE si son positivas, o entradas mayores que SIZE si son negativas

Una cosa más, creo que la línea de comando exacta que Bond quiere es algo como esto,

find . -mindepth 2 -type d | xargs du -sh -t 1G

Cuando -mindepth 1afirma que debe contener la ruta actual, -mindepth 2funcionará según su demanda.

A continuación se muestra una demostración del popular conjunto de datos Lisa .

~/dataset/lisa $ find . -mindepth 2 -type d | xargs du -sh -t 1G | sort -h
1.2G    ./aiua120306-0/frameAnnotations-DataLog02142012_002_external_camera.avi_annotations
1.7G    ./aiua120306-1/frameAnnotations-DataLog02142012_003_external_camera.avi_annotations
4.0G    ./negatives/negativePics
6.0G    ./experiments/training

~/dataset/lisa $ find . -mindepth 2 -type d | xargs du -sh -t 1G
4.0G    ./negatives/negativePics
1.2G    ./aiua120306-0/frameAnnotations-DataLog02142012_002_external_camera.avi_annotations
6.0G    ./experiments/training
1.7G    ./aiua120306-1/frameAnnotations-DataLog02142012_003_external_camera.avi_annotations

~/dataset/lisa $ find . -mindepth 2 -type d | xargs du -sh -t 3G
4.0G    ./negatives/negativePics
6.0G    ./experiments/training
David Jung
fuente