GNU/Linux >> Tutoriales Linux >  >> Linux

Encuentra los archivos y directorios más grandes en Linux

Introducción

A veces es necesario saber qué archivos o directorios están consumiendo todo el espacio del disco. Además, puede ser necesario encontrarlo en la ubicación del directorio particular en el sistema de archivos, como /tmp/ o /var/ o /home/.

También es muy necesario encontrar los archivos basura innecesarios y liberarlos de su disco duro.

Este tutorial describe cómo encontrar los archivos y carpetas más grandes en Linux usando buscar y du comandos.

Encuentre los archivos y directorios más grandes

Para encontrar los directorios más grandes en /home ejecución de partición:

[unixcop@rhel-pc ~]$  du -a /home | sort -n -r | head -n 5
2435568	/home/qadry
2435568	/home
1530928	/home/qadry/.cache
846976	/home/qadry/.cache/mozilla/firefox/c2ivcm3y.default-default
846976	/home/qadry/.cache/mozilla/firefox
[unixcop@rhel-pc ~]$ 

O

# du -a / 2>/dev/null | sort -n -r | head -n 5

Los dos comandos anteriores muestran los 5 directorios más grandes de /home .

Encuentre los directorios más grandes

Para encontrar los directorios más grandes en el directorio de trabajo actual, ejecute:

[root@rhel-pc var]# du -hsx * | sort -rh | head -5
3.1G	lib
324M	cache
38M	tmp
28M	log
632K	snap
[root@rhel-pc var]#

Las opciones de du comando:

h :Tamaños de impresión en formato legible por humanos

x :omitir directorios en diferentes sistemas de archivos.

s :muestra solo un total para cada argumento (resumen).

ordenar :Ordenar líneas de archivos de texto

r :Invertir las comparaciones.

cabeza :Muestra la primera parte de los archivos.

n :número de líneas

Para encontrar los directorios más grandes en un directorio específico... por ejemplo /var directorio, ejecute:

[root@rhel-pc ~]# du -hs /var | sort -rh | head -5
7.0G	/var
[root@rhel-pc ~]# 

Y para mostrar las carpetas/archivos más grandes, incluidos los subdirectorios, ejecute:

[root@rhel-pc var]# du -Sh | sort -rh | head -5
1.1G	./lib/snapd/snaps
553M	./lib/snapd/snap/kde-frameworks-5-core18/32/usr/lib/x86_64-linux-gnu
327M	./lib/snapd/snap/gnome-3-28-1804/161/usr/lib/x86_64-linux-gnu
251M	./lib/snapd/snapshots
240M	./lib/snapd/snap/spotify/46/usr/share/spotify
[root@rhel-pc var]# 

Para averiguar solo los tamaños de archivo principales, ejecute:

[root@rhel-pc var]# find -type f -exec du -Sh {} + | sort -rh | head -n 5
261M	./lib/snapd/snaps/kde-frameworks-5-core18_32.snap
251M	./lib/snapd/snapshots/2_spotify_1.1.55.498.gf9a83c60_46.zip
192M	./lib/rpm/Packages
180M	./lib/snapd/snaps/spotify_46.snap
165M	./lib/snapd/snaps/gnome-3-28-1804_161.snap
[root@rhel-pc var]# 

En el comando anterior, solo se mostraban los tamaños de archivo más grandes.

Para encontrar los archivos más grandes en una ubicación específica, incluya la ruta además de buscar comando como se muestra a continuación:

[root@rhel-pc ~]# find /home/qadry/ -type f -exec du -Sh {} + | sort -rh | head -n 5
138M	/home/qadry/Downloads/Video/▶ TroubleShootingTools.mp4
102M	/home/qadry/.local/share/TelegramDesktop/tupdates/temp/Telegram
102M	/home/qadry/Downloads/Telegram/Telegram
53M	/home/qadry/xdm-setup-7.2.11.tar.xz
53M	/home/qadry/install.sh
[root@rhel-pc ~]# 

El comando anterior mostrará el archivo más grande de /home/qadry ubicación.

Encuentre el archivo más grande en un directorio y sus subdirectorios usando el comando de búsqueda

Escriba el siguiente comando GNU/buscar:

## Warning: only works with GNU find ##
# find /path/to/dir/ -printf '%s %p\n'| sort -nr | head -5  #for a specified location
# find . -printf '%s %p\n'| sort -nr | head -5

Por ejemplo:

Una ubicación específica: (por ejemplo, /var )

[root@rhel-pc ]# find /var/ -printf '%s %p\n'| sort -nr | head -5
273375232 /var/lib/snapd/snaps/kde-frameworks-5-core18_32.snap
273375232 /var/lib/snapd/cache/127632cc622891a2cd69da70616530d2a15cccf0a9adb50f7d2dca3c1bfc56c0cc9052c39a8b22cadc619a43fd87048f
262885666 /var/lib/snapd/snapshots/2_spotify_1.1.55.498.gf9a83c60_46.zip
201011200 /var/lib/rpm/Packages
188289024 /var/lib/snapd/snaps/spotify_46.snap

O

Directorio de trabajo actual:

[root@rhel-pc var]# find . -printf '%s %p\n'| sort -nr | head -5
273375232 ./lib/snapd/snaps/kde-frameworks-5-core18_32.snap
273375232 ./lib/snapd/cache/127632cc622891a2cd69da70616530d2a15cccf0a9adb50f7d2dca3c1bfc56c0cc9052c39a8b22cadc619a43fd87048f
262885666 ./lib/snapd/snapshots/2_spotify_1.1.55.498.gf9a83c60_46.zip
201011200 ./lib/rpm/Packages
188289024 ./lib/snapd/snaps/spotify_46.snap

Conclusión

Acaba de aprender a buscar, encontrar y enumerar los directorios/archivos más grandes o más grandes en Linux usando la combinación de du/find y otros comandos.


Linux
  1. Encuentra archivos y directorios en Linux con el comando de búsqueda

  2. Cómo usar el comando find de Linux para buscar archivos

  3. Cómo encontrar todos los archivos dispersos en Linux

  4. ¿Cómo puedo ver el tamaño de los archivos y directorios en Linux?

  5. ¿Cómo encontrar los directorios más grandes o los archivos más grandes?

Cómo comprimir archivos y directorios en Linux

Cómo encontrar recursivamente y enumerar los archivos por fecha en Linux

3 formas de encontrar archivos y directorios en Linux

Cómo encontrar y eliminar directorios vacíos en Linux

Cómo encontrar archivos con el comando fd en Linux

Encuentre archivos y directorios en Linux fácilmente