Utilisation avancée de la commande du
Dans cette étape finale, vous apprendrez quelques techniques avancées en utilisant la commande du
pour trier les répertoires par taille, exclure certains fichiers et vous concentrer sur les fichiers volumineux.
Tri des répertoires par taille
Une tâche courante consiste à trouver les répertoires ou les fichiers les plus volumineux. Vous pouvez combiner du
avec sort
pour y parvenir :
du -h ~/project/data | sort -h
L'option -h
pour sort
lui permet de comprendre et de trier correctement les tailles lisibles par l'homme. La sortie sera triée du plus petit au plus grand.
Pour trier du plus grand au plus petit, ajoutez l'option -r
(renverser) à sort
:
du -h ~/project/data | sort -hr
Exemple de sortie :
3.9M /home/labex/project/data
2.0M /home/labex/project/data/backups
804K /home/labex/project/data/images
8.0K /home/labex/project/data/docs
4.0K /home/labex/project/data/docs/doc2.txt
4.0K /home/labex/project/data/docs/doc1.txt
Recherche de types de fichiers spécifiques
Vous pouvez utiliser la commande find
en combinaison avec du
pour calculer la taille de types de fichiers spécifiques :
## Find all jpg files and check their sizes
find ~/project/data -name "*.jpg" -exec du -h {} \;
Cette commande trouve tous les fichiers avec l'extension .jpg
dans le répertoire ~/project/data
et exécute du -h
sur chacun d'eux.
Exclusion de répertoires
Parfois, vous souhaitez exclure certains répertoires du calcul de l'utilisation du disque. Vous pouvez utiliser l'option --exclude
:
du -h --exclude="backups" ~/project/data
Cela calculera l'utilisation du disque de tout le contenu de ~/project/data
à l'exception du répertoire backups
.
Obtention de l'utilisation totale du disque
Pour obtenir uniquement le total global (synthèse) d'un répertoire et de tous ses sous-répertoires :
du -sh ~/project/data
Exemple de sortie :
3.9M /home/labex/project/data
Cela est particulièrement utile lorsque vous n'êtes intéressé que par la taille totale d'une arborescence de répertoires plutôt que par la répartition détaillée.
Vérification de l'utilisation du disque en fonction de l'âge des fichiers
Créons quelques fichiers avec des horodatages différents pour illustrer ceci :
## Create a directory for this example
mkdir -p ~/project/data/timeline
cd ~/project/data/timeline
## Create files with different timestamps
echo "Old file" > old_file.txt
echo "Recent file" > recent_file.txt
touch -d "1 month ago" old_file.txt
Maintenant, vous pouvez utiliser find
avec du
pour vérifier les fichiers modifiés dans une certaine période de temps :
## Find files modified in the last 7 days and check their sizes
find ~/project/data -type f -mtime -7 -exec du -h {} \;
Cela affichera les tailles de tous les fichiers qui ont été modifiés au cours des 7 derniers jours.
Ces techniques avancées vous aideront à gérer efficacement l'espace disque sur les systèmes Linux en identifiant où l'espace est utilisé et en trouvant des opportunités pour libérer de l'espace de stockage.