Connaissances Informatiques >> systèmes >> Unix >> Content
  Derniers articles
  • Qu'est-ce qu'un quota dans Linux? 
  • Quelle commande affiche les 10 derni…
  • Quel est le but du système d’exploi…
  • Comment vérifier l' espace disque l…
  • Que signifie killall HUP sous Linux …
  • Quels sont les deux types de canaux …
  • Comment changer la couleur de fond d…
  • GREP Tutoriel pour Unix 
  • Pourquoi Unix a-t-il réussi ? 
  • Quand Unix a-t-il été réécrit en…
  •   Unix
  • Compétences informatiques de base

  • Linux

  • Mac OS

  • Ubuntu

  • Unix

  • fenêtres

  • windows Vista

  • windows XP

  • Windows 7

  • Windows 10

  • Windows 11

  • Windows 2012

  • Windows 2016

  • Windows 2019

  • Windows 2022

  • Apple

  • Android

  • iOS

  • CentOS
  •  
    Unix

    Quel parcours calcule la taille totale de chaque répertoire dans le système Unix ?

    Aucune des méthodes de parcours Unix standard (comme « find », « ls » ou « tree ») ne calcule directement la taille totale de chaque répertoire en une seule commande. Ils affichent généralement la taille des fichiers dans un répertoire, mais pas la somme récursive des tailles de tous les fichiers et sous-répertoires de ce répertoire.

    Pour calculer la taille totale de chaque répertoire, vous utiliserez généralement « du » (utilisation du disque). Cependant, `du` ne "traverse" pas intrinsèquement dans le sens de visiter chaque répertoire et d'imprimer son nom et sa taille séparément. Il indique la taille de chaque répertoire, *y compris ses sous-répertoires*, ce qui est subtilement différent d'un parcours qui répertorierait explicitement chaque répertoire et sa taille indépendamment de ses enfants.

    Voici comment réaliser une traversée de répertoires qui montre la taille totale de chaque répertoire :

    Utiliser `du` avec `find` :

    Ceci combine « find » pour le parcours et « du » pour le calcul de la taille. `find` répertorie chaque répertoire, et `xargs` transmet ces répertoires à `du` :

    ```bash

    trouver . -type d -print0 | xargs -0 -I {} du -sh {}

    ```

    * `trouver. -type d -print0` :Ceci recherche tous les répertoires ( `-type d`) à partir du répertoire courant (`.`) et imprime leurs noms séparés par des caractères nuls (`-print0`). Les caractères nuls sont cruciaux pour gérer les noms de fichiers contenant des espaces ou des caractères spéciaux.

    * `xargs -0 -I {} du -sh {}` :ceci prend les noms de fichiers séparés par des valeurs nulles de `find` et exécute `du -sh` sur chacun d'eux. `-0` indique à `xargs` d'attendre une entrée séparée par des valeurs nulles, `-I {}` définit `{}` comme espace réservé pour le nom de fichier, `du -sh` affiche la taille dans un format lisible par l'homme (`-h`) et uniquement la taille du résumé (pas la taille de chaque fichier à l'intérieur) `-s`.

    C'est ce qui se rapproche le plus d'un parcours qui vous donne explicitement la taille de chaque répertoire. La commande `du` elle-même n'est pas strictement un algorithme de parcours, mais lorsqu'elle est utilisée avec `find`, la combinaison effectue l'action souhaitée.

     
    Article précédent:
    Article suivant:
    Articles recommandés
  • Qu'entendez-vous par Linux? 
  • Qu'entendez-vous par commandes dans un environnement Linux ? 
  • Afficher les avantages de la redirection avec l'exemple dans Unix? 
  • Quelles sont certaines des fonctionnalités courantes des éditeurs de fichiers disponibles sous Uni…
  • Comment écrivez-vous un programme de script awk dans Unix? 
  • Quel est le but de la commande ping ? 
  • Comment vérifier un fichier pour les fautes d’orthographe sous Unix ? 
  • Un vrai système d’exploitation Unix ? 
  • Sous Unix où la sortie standard est généralement dirigée ? 
  • Combien de shells peuvent s’exécuter en même temps sous Linux ? 
  • Connaissances Informatiques © http://www.ordinateur.cc