Taille de dossier, fichiers [Fermé]

Signaler
-
 re -
Bonjour, je commence en bash et je dois faire un script:

On cherche à faire un script qui permet de savoir, pour un utilisateur et dans un répertoire de la machine (donnés en paramètre du script) :

* la place (réelle) occupée par les fichiers de cet utilisateur,
* la place (en blocs) occupée par les fichiers sur le disque (dépend de la taille du bloc du SDF),
* le nombre de sous-répertoires au total, le répertoire de taille min, de taille max,
* le nombre de fichiers au total,
* le nombre de fichiers d’un certain type (liste donnée dans un fichier à fournir au script) et leurs tailles totales, moyenne (nombre réel), mini et maxi,
* le pourcentage de fichiers de ce type par rapport à tous les fichiers de ce rép. et par rapport à tous les fichiers de l’utilisateur,
* même question pour les tailles réelles et disque.


pour l'instant j'ai fait seulement les test des paramètres corrects et d'existence du répertoire et le changement de répertoire. Pour la suite je ne sait pas comment faire. Pouvez- vous m'aider ?

toutes les suggestions sont les bienvenues

2 réponses

Messages postés
40805
Date d'inscription
jeudi 28 août 2003
Statut
Modérateur
Dernière intervention
10 août 2020
4 857
Salut,

Demander de l'aide pour vos exercices sur CCM

Et dans le désordre voir les pages de man de :
du
df
ls
find
wc
bc
file
stat


;-)

merci !
> alfonsewhite
j'ai un peut avancer dans le script et je voudrais mettre des options de commandes en plus mais je ne comprend pas les notations du man:

par exemple pour la commande du :


-B, --block-size=TAILLE utilise des blocs de TAILLE octets

commenent écrire ca dans mon sctipt?
Messages postés
40805
Date d'inscription
jeudi 28 août 2003
Statut
Modérateur
Dernière intervention
10 août 2020
4 857 > alfonsewhite
L'option "-B taille" te permet de (extrait du man du) :

       --block-size= nombre
              Afficher  les  tailles  en  utilisant  des blocs ayant le nombre
              indiqué d'octets.  (Nouveauté dans fileutils-4.0).


Autrement dit :
[tmpfs]$ du -s
124K    .

[tmpfs]$ du -s -B 1024
124     .

[tmpfs]$ du -s -B 1000
127     .

[tmpfs]$ du -s -B 512
248     .

[tmpfs]$

;-))
Salut alphonse.
J'ai eu le temps de regarder ton post vite fait et pour commencer je te conseil d'utiliser cette commande
qui te permetera de rediriger et donc lister tout tes fichiers necessaire pour ton script ceci te permettra donc de scanner qu'une seule fois tout ton ordinateur pour toutes les commandes à appliquer, ca te facilitera vachement la vie !

> fichiers*

En esperant de t'être venue en aide
Comment faire pour rechercher dans le repertoire courant et tout les sous rep tous les fichiers .txt par exemple car avec un

find *.txt

ca recherche que dans le répertoire courant.

Comment faire pour avoir la taille de tous ces fichiers , celle du plus lour et du plus petit si ils sont pas dans le même rep ?

Merci.
> alfonsewhite
find . -name '*.txt'