Recuperer que le % de dispo d'un disque

Recuperer que le % de dispo d'un disque - Linux et OS Alternatifs

Marsh Posté le 14-02-2002 à 15:33:04    

J'ai besoin de créer un script qui check le % de dispo du disque (quand on fait un df) et qui en voie un mail quand on depasse un certain palier.
 
Pb : je trouve pas comment recuperer rien que le pourcentage et la valeur apres un df.
ex:  
Filesystem  512-blocks     Used    Avail Capacity  Mounted on
/dev/sd0a      8718484   385652  7896908     5%    /
/dev/sd0d       968478       14   920042     0%    /tmp
/dev/sd0e      7143818  4176920  2609708    62%    /var
 
je veux  
5
0
62
 
je jongle avec cut mais je trouve pas.
 
a+

Reply

Marsh Posté le 14-02-2002 à 15:33:04   

Reply

Marsh Posté le 14-02-2002 à 15:41:08    

Solution rapide et sale:  
 
df | grep -v Filesystem | awk '{print $5}' | sed 's/\%//'

 

[jfdsdjhfuetppo]--Message édité par pipomolo--[/jfdsdjhfuetppo]


---------------
This message is provided AS IS, and comes with ABSOLUTELY NO WARRANTY,  
Reply

Marsh Posté le 14-02-2002 à 15:41:34    

ça sent le awk
 
df | awk '{ print $5 }' | grep -v Capacity | sed s/%//
 
edit : fuque, grilled  [:sisicaivrai]

 

[jfdsdjhfuetppo]--Message édité par kadreg--[/jfdsdjhfuetppo]


---------------
brisez les rêves des gens, il en restera toujours quelque chose...  -- laissez moi troller sur discu !
Reply

Marsh Posté le 14-02-2002 à 15:44:15    

Huhu  :D  
 
lol en + c la mm reponse  :lol:

 

[jfdsdjhfuetppo]--Message édité par pipomolo--[/jfdsdjhfuetppo]


---------------
This message is provided AS IS, and comes with ABSOLUTELY NO WARRANTY,  
Reply

Marsh Posté le 14-02-2002 à 15:45:09    

Merci beaucoup les gars
en effet je connais pas awk ni sed
 
d'ailleurs si vous pouviez m'expliquer le coup du sed...
 
 
merci encore
 
a+


---------------
-Hassan Cehef --> C'est possible -Roberttripoux --> Les bons comptes font les bons amis
Reply

Marsh Posté le 14-02-2002 à 15:47:37    

RobinMasters a écrit a écrit :

 
d'ailleurs si vous pouviez m'expliquer le coup du sed...




 
la commande s de sed permet de remplacer une chaine par une autre avec la syntaxe s/A/B/ (remplacer les occurences de A par B). Ici, si on met pas le sed à la fin, c'est ecrit 5% et pas 5, donc on remplace % par une chaine vide


---------------
brisez les rêves des gens, il en restera toujours quelque chose...  -- laissez moi troller sur discu !
Reply

Marsh Posté le 14-02-2002 à 15:50:06    

merci tu peux m'expliquer la syntaxe exacte de
sed s/%//


---------------
-Hassan Cehef --> C'est possible -Roberttripoux --> Les bons comptes font les bons amis
Reply

Marsh Posté le 14-02-2002 à 15:50:58    

Bah ed et awk c hyper pratique pour faire ce genre de manips
 
En gros awk est un langage de programmation tres adapte a la manipulation de chaines de caracteres...il lit un fichier ou l'entree standard ligne par ligne et applique des commandes...
 
En l'occurence la commande ici est print $5 appliquee a toutes les lignes, et elle fait afficher le 5eme champ (champ defini par des espaces par defaut, mais ca peut se changer...)
 
Sed est une commande qui permet aussi de faire des manips sur des fichiers ou des flots. Sed est moins puissant que awk, mais tres pratique pour faire des substitutions et autres...
 
Ici la commande sed sert juste a enlever le symbole %. La syntaxe est s/chaine1/chaine2/ qui substitue chaine1 (cad %) par chaine2 (cad rien :D)
 
Voila, pour un intro sympa a sed et awk:
http://www.shellunix.com/sed.html
http://www.shellunix.com/awk.html


---------------
This message is provided AS IS, and comes with ABSOLUTELY NO WARRANTY,  
Reply

Marsh Posté le 14-02-2002 à 15:51:36    

En fait pkoi finir par un '/'  ?
 
sed s/%//
 
ca remplace % par rien et le 3é '/' il est toujours present apres un sed s?


---------------
-Hassan Cehef --> C'est possible -Roberttripoux --> Les bons comptes font les bons amis
Reply

Marsh Posté le 14-02-2002 à 15:52:27    

RobinMasters a écrit a écrit :

merci tu peux m'expliquer la syntaxe exacte de
sed s/%//  




 
s => remplacer
/ => séparateur
% => le caractère à remplacer
/ => séparateur
[vide]  => le caractère à mettre
/ => séparateur
 
lance la commande sans le sed :  
df | awk '{ print $5 }' | grep -v Capacity
 
Tu vas voir le problème


---------------
brisez les rêves des gens, il en restera toujours quelque chose...  -- laissez moi troller sur discu !
Reply

Marsh Posté le 14-02-2002 à 15:52:27   

Reply

Marsh Posté le 14-02-2002 à 15:53:08    

g compris merci les gars
 
 
a+


---------------
-Hassan Cehef --> C'est possible -Roberttripoux --> Les bons comptes font les bons amis
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed