Précédent   Forum des professionnels en informatique > Systèmes > Linux > Système
Système Vos questions autour de l'administration système
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 04/08/2011, 10h32   #1
Membre habitué
 
Luis
Inscription : avril 2006
Messages : 436
Détails du profil
Informations personnelles :
Nom : Luis

Informations forums :
Inscription : avril 2006
Messages : 436
Points : 119
Points : 119
Par défaut iostat sum in command line

Salut a tous

[linux - rhel5]

J'execute cette commande et je la awk pour recuperer seulement les read et write:

Code :
iostat  | awk '{print $3,$4}'
J'obtient qqu chose comme ceci:

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
0.01 0.00
0.00 0.00
120.62 20.81
120.61 20.81
0.55 5.82
0.55 5.82
2.85 12.68
2.85 12.68
0.61 2.59
0.61 2.59
0.00 0.00
0.00 0.00
0.00 0.00
0.00 0.00

Je souhaiterais avoir la SOMME des 2 colonnes..Est ce possible?
D'avance merci
ldiaz est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 04/08/2011, 11h20   #2
Expert Confirmé Sénior
 
Avatar de frp31
 
Homme francois
Ingénieur systèmes et réseaux
Inscription : juillet 2006
Messages : 3 535
Détails du profil
Informations personnelles :
Nom : Homme francois
Âge : 35
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations professionnelles :
Activité : Ingénieur systèmes et réseaux
Secteur : Aéronautique - Marine - Espace - Armement

Informations forums :
Inscription : juillet 2006
Messages : 3 535
Points : 7 748
Points : 7 748
quelque choses comme remplacer par printf ?
Code :
commande  | awk '{printf("%10.2f\n",$3+$4)}'
ou pour éviter tout risques de problèmes avec les "," comme séprateurs de décimal en les remplaçant par des "."

Code :
..........| sed "s/,/\./g" |awk '{printf("%5.5f\n",$3+$4)}'
frp31 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/08/2011, 11h48   #3
Membre habitué
 
Luis
Inscription : avril 2006
Messages : 436
Détails du profil
Informations personnelles :
Nom : Luis

Informations forums :
Inscription : avril 2006
Messages : 436
Points : 119
Points : 119
Bonjour

tout d'abord merci pour la reponse.
Mais je crois que je me suis mal expliqué
en fait ce que je souhaiterais c'est la somme des valeurs de la colone 1 puis, la somme de la colone 2.

si iostat donne ceci:

Code :
1
2
3
4
5
0.57 5.81
0.57 5.81
2.85 12.64
2.85 12.64
0.62 2.59
comme resultat je recherche ceci:
7.46 39.49

j'ai trouvé ceci sur internet mais je suis incapable de savoir si c'est le bon resultat:

Code :
iostat 1 1 | awk '{if(NR > 3 && NR < 6) SUM1 += $2; if(NR > 7 && NR < 10) SUM2 += $2 } END { print SUM1 "\n" SUM2 }'

D'avance merci
ldiaz est déconnecté   Envoyer un message privé Réponse avec citation 01
Vieux 04/08/2011, 12h50   #4
Membre habitué
 
Luis
Inscription : avril 2006
Messages : 436
Détails du profil
Informations personnelles :
Nom : Luis

Informations forums :
Inscription : avril 2006
Messages : 436
Points : 119
Points : 119
J'ai trouvé

il suffit de faire ceci:

Code :
iostat | awk '{ SUM1 += $3} END { print SUM1 }
et si on veut 2 colonnes:

Code :
iostat | awk '{ SUM1 += $3} { SUM2 += $4} END { print SUM1,SUM2 }
Cool merci a tous
ldiaz est déconnecté   Envoyer un message privé Réponse avec citation 10
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 10h27.


 
 
 
 
Partenaires

Hébergement Web