bonjour j'aimerais ecrire un scripts mais je ne sais pas comment mis prendre
pouriez vous me filer un coups de doigts.
bon
se scripts doit m'afficher la taille d'une liste de fichier plus leur poids additionne merci
bonjour j'aimerais ecrire un scripts mais je ne sais pas comment mis prendre
pouriez vous me filer un coups de doigts.
bon
se scripts doit m'afficher la taille d'une liste de fichier plus leur poids additionne merci
# du
Posté par lord taki (site web personnel) . Évalué à 2.
Proche du RTFM mais quand même:
- au hasard d'une recherche => http://abs.traduc.org/abs-fr/
- et pour le besoin précis exprimé la commande 'du'
# la base d'un script, c'est l'algo(ritme)
Posté par NeoX . Évalué à 3.
si tu reflechis, et ecris ton algoritme, il ne te restera alors plus qu'à le traduire.
comme c'est vendredi et que je suis en congés ce soir, je suis de bonne humeur,
voici des bouts d'algoritmes :
1°) taille d'une liste de fichier :
- lire la liste
- pour chaque fichier dans cette liste
-- calculer la taille du fichier (ls -l donne l'info qu'il faut ensuite recuperer)
-- afficher le nom du fichier et sa taille
2°) faire la somme :
somme = 0
pour chaque fichier dans la liste
- obtenir la taille
- somme = somme + taille
afficher la somme
# scripts
Posté par mrorion47 . Évalué à -1.
merci pour vos reponce mais je me suis tromper c'est pas les dossier mais un repertoire
de plus je sais pas comment lui ordonner de le faire avec plusieur repertoire en meme temps
le debut de mon scripts donne sa
du -sh /uvfx/Projects/Overdrive/input/005/0010
005/0010
005/0015
005/0060
005/0100
005/0110
005/0130
005/0160
016/0007
019/0003
019/0007
019/0020
019_0030
019_0033
019_0037
019_0075
019_0080
019_0090
019_0130
019_0140
020_0010
020_0030
020_0040
020_0050
020_0070
020_0110
021_0002
021_0005
021_0007
029_0010
030_0020
032_0005
et sa doit etre fais pour tout sa
[^] # Re: scripts
Posté par Marotte ⛧ . Évalué à 3. Dernière modification le 12 août 2016 à 18:47.
Déjà il ne faudrait pas utiliser l’option -h de du car tu vas avoir des tailles genre '42k' ou '12,3M', pas facile pour faire la somme car il faudrait convertir…
La taille d’une liste pour moi c’est le nombre d’éléments de cette liste…
Le plus pratique pour faire ce que tu veux (enfin tu n’es pas très précis dans ta demande…), à savoir faire la somme des valeurs de l’une des colonne d’une liste c’est d’utiliser awk
Par exemple :
du -sk /usr/local/* |awk '{somme += $1} END {print somme}'
Va faire la somme des valeurs de la première colonne (
somme += $1
), puis l’afficher à la fin.J’utilise ici -k afin d’avoir la taille en kilo-byte.
man du ! man awk ! ;)
[^] # Re: scripts
Posté par wismerhill . Évalué à 4.
Ou bien tu utilise l'option -c de du qui te donne le total de la taille de tous les arguments.
Et note aussi que du (comme son nom l'indique, «disk usage») mesure par défaut la taille effectivement utilisée dans le système de fichier, en nombre de blocs, qui peut être inférieure ou supérieure à la taille des données utiles des fichiers (celle rapportée par les outils habituels comme ls).
Pour avoir la taille des vrai données des fichiers il faut ajouter l'option --apparent-size.
[^] # Re: scripts
Posté par Marotte ⛧ . Évalué à 3.
Oui, on peut aussi faire
du -sk /usr/local
qui donne le même résultat à 4ko près… j’essayaisd’étaler ma confitured’être didactique :)[^] # Re: scripts
Posté par cyberjunkie . Évalué à 4. Dernière modification le 13 août 2016 à 01:27.
Je suis émerveillé par tant de bonnes informations, de connaissances partagées et de sens didactique pour répondre à un mec qui bulle sur son TP! Si si, vraiment! :-)
Du coup, j'ai plussoyé tout le monde :-)
(enfin, sauf le mec du TP que j'ai moinssoyé, faut pas déconner quand même… ;-)
# deuxlignes
Posté par Tonton Th (Mastodon) . Évalué à 3.
Pour la taille de la liste, je pense que c'est ça :
wc -l liste_des_fichiers
Et pour le poids, je pense que ce truc le fait…
wc -c $(cat liste_des_fichiers) | tail -1 | awk '{print $1}'
Tu as un numéro de fax pour la facture ?
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.