Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2508 connectés 

 


Dernière réponse
Sujet : [shell] Calcul somme de taille de fichiers
arsunik stat n'est pas installé partout.
En une ligne de awk :

Code :
  1. ls -l * | awk '{s+=$5} END {print s}'


 
du affiche la taille en nombre de bloc mais comme le fait remarquer bobuse, il intègre une option permettant de faire un total :

Code :
  1. du -c * | tail -1 | cut -f1
  2. du -c *.pdf | awk 'END { print $1}'



Votre réponse
Nom d'utilisateur    Pour poster, vous devez être inscrit sur ce forum .... si ce n'est pas le cas, cliquez ici !
Le ton de votre message                        
                       
Votre réponse


[b][i][u][strike][spoiler][fixed][cpp][url][email][img][*]   
 
   [quote]
 

Options

 
Vous avez perdu votre mot de passe ?


Vue Rapide de la discussion
arsunik stat n'est pas installé partout.
En une ligne de awk :

Code :
  1. ls -l * | awk '{s+=$5} END {print s}'


 
du affiche la taille en nombre de bloc mais comme le fait remarquer bobuse, il intègre une option permettant de faire un total :

Code :
  1. du -c * | tail -1 | cut -f1
  2. du -c *.pdf | awk 'END { print $1}'


bobuse du -c *.ext :??:
matafan Pour ceux qui aiment faire ça en une ligne :

expr `stat -c'%s +' *` 0


Remplacer * par le pattern voulu, évidemment.

AirbaT Bah c'est nickel, merci !
BMOTheKiller


#!/bin/sh
 
total=0
taille=0
 
if [ "$1" != "" ] ; then
    ext="$1"
else ext=avi
fi
 
for taille in `du *.$ext | awk '{print $1}'`
do
total=`expr $total + $taille`
done
echo Taille totale des fichiers $ext listés : $total ko


 
tu peux donner un paramètre sur la ligne de commande, genre "jpg" en lançant le script : ./script jpg et il donnera la taille totale des jpg, si rien n'est indiqué, il prend l'extension par défaut du script qui est ici "avi"

AirbaT J'aimerais calculer la somme de la taille de fichiers portant la meme extension à l'interieur d'un répertoire.
J'ai cherché à droite à gauche mais j'ai rien trouvé de bien probant.
Comme début j'ai :

Code :
  1. #!/bin/bash
  2. total=0
  3. for fic in $(ls *.extension); do


 
Pis aprés je seeeeche...

Code :
  1. $total+= taille($fic)
  2. done
  3. echo $total


un truc du style mais en bash quoi...
merci


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)