Maison  >  Article  >  Opération et maintenance  >  Comment trouver des fichiers volumineux sous Linux ? (exemple de code)

Comment trouver des fichiers volumineux sous Linux ? (exemple de code)

青灯夜游
青灯夜游original
2019-03-29 16:48:546208parcourir

Au fil du temps, le lecteur de disque peut devenir encombré de fichiers inutiles qui occupent beaucoup d'espace disque, ce qui entraîne un faible espace disque sur votre appareil Linux. Alors, comment trouver ces gros fichiers ? L'article suivant vous expliquera comment utiliser les commandes find et du pour trouver les fichiers et répertoires les plus volumineux sous Linux. J'espère qu'il vous sera utile.

Comment trouver des fichiers volumineux sous Linux ? (exemple de code)

Utilisez la commande find pour rechercher des fichiers volumineux

La commande find est l'outil le plus populaire dans la bibliothèque d'outils de l'administrateur système Linux L'un des outils les plus puissants. Il permet aux utilisateurs de rechercher des fichiers et des répertoires en fonction de différents critères, notamment la taille du fichier.

Par exemple, si vous souhaitez rechercher des fichiers d'une taille supérieure à 100 Mo, vous pouvez utiliser la commande suivante dans le répertoire de travail actuel :

sudo find . -xdev -type f -size +100M

Remarque : vous pouvez remplacer ". " avec le fichier le plus volumineux que vous souhaitez rechercher. Le chemin d'accès au répertoire.

La sortie affichera une liste de fichiers sans aucune autre information.

/var/lib/libvirt/images/centos-7-desktop_default.img
/var/lib/libvirt/images/bionic64_default.img
/var/lib/libvirt/images/win10.qcow2
/var/lib/libvirt/images/debian-9_default.img
/var/lib/libvirt/images/ubuntu-18-04-desktop_default.img
/var/lib/libvirt/images/centos-7_default.img

La commande find peut également être utilisée en conjonction avec d'autres outils, tels que ls ou sort, pour effectuer des opérations sur ces fichiers.

Par exemple : nous redirigeons la sortie de la commande find vers ls, ls affichera la taille de chaque fichier trouvé, puis redirigerons la sortie vers la commande sort pour la trier en fonction de la taille du fichier dans la colonne 5. .

find . -xdev -type f -size +100M -print | xargs ls -lh | sort -k5,5 -h -r

obtiendra le résultat suivant :

-rw-------  1 root   root 40967M Jan  5 14:12 /var/lib/libvirt/images/win10.qcow2
-rw-------  1 root   root  3725M Jan  7 22:12 /var/lib/libvirt/images/debian-9_default.img
-rw-------  1 root   root  1524M Dec 30 07:46 /var/lib/libvirt/images/centos-7-desktop_default.img
-rw-------  1 root   root   999M Jan  5 14:43 /var/lib/libvirt/images/ubuntu-18-04-desktop_default.img
-rw-------  1 root   root   562M Dec 31 07:38 /var/lib/libvirt/images/centos-7_default.img
-rw-------  1 root   root   378M Jan  7 22:26 /var/lib/libvirt/images/bionic64_default.img

Si la sortie contient beaucoup d'informations, nous pouvons également utiliser la commande head pour afficher uniquement les 10 premières lignes :

find . -xdev -type f -size +100M -print | xargs ls -lh | sort -k5,5 -h -r | head

Décomposons et comprenons la commande ci-dessus :

1 find . -xdev -type f -size +100M -print : Recherchez des fichiers (-type f) supérieurs à 100 Mo (-size+100M) dans. le répertoire de travail actuel (.), ne réduisez pas les répertoires sur d'autres systèmes de fichiers (-xdev), affichez le nom de fichier complet sur la sortie standard, puis encapsulez la sortie (-print).

1, xargs ls -lh : utilisez xargs pour exécuter la commande ls-lh, qui affichera la sortie dans un format de liste longue lisible par l'homme.

3, sort -k5,5 -h -r : Triez les lignes selon la colonne 5 (-k5,5), comparez au format lisible par l'homme (-h) et inversez le résultat (-r).

4, head  : affiche uniquement les 10 premières lignes de la sortie du pipeline.

La commande find propose de nombreuses options puissantes. Par exemple, vous pouvez rechercher des fichiers volumineux datant de plus de x jours, ayant une extension spécifique ou appartenant à un utilisateur spécifique.

Utilisez la commande du pour rechercher des fichiers et des répertoires volumineux

La commande du est utilisée pour estimer l'utilisation de l'espace fichier et est utile pour rechercher des répertoires qui occupent beaucoup d’espace disque et les fichiers sont particulièrement utiles.

L'utilisation de la commande suivante affichera les fichiers et répertoires les plus volumineux :

du -ahx . | sort -rh | head -5

Sortie :

55G.
24G./.vagrant.d/boxes
24G./.vagrant.d
13G./Projects
5.2G./.minikube

Description de la commande :

1, du -ahx . : estimez l'utilisation de l'espace fichier dans le répertoire de travail actuel (.), calculez simultanément les fichiers et les répertoires (a), affichez les tailles dans un format lisible par l'homme (h) et ignorez différents systèmes de fichiers (x ) sur l'annuaire.

2, sort -rh : Triez les lignes en comparant dans un format lisible par l'homme (-h) et inversez le résultat (-r).

3, head -5 : affiche uniquement les 5 premières lignes de la sortie du pipeline.

La commande du contient des options supplémentaires que vous pouvez utiliser pour optimiser le résultat de l'utilisation de l'espace disque.

Tutoriels vidéo associés recommandés : "Tutoriel Linux"

Ce qui précède est l'intégralité du contenu de cet article, j'espère qu'il sera utile à l'apprentissage de chacun. Pour un contenu plus passionnant, vous pouvez prêter attention aux colonnes de didacticiels pertinentes du site Web PHP chinois ! ! !

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn