Bonjour,
Voici un script que j'ai réalisé pour avoir des informations sur la mémoire d'une machine UNIX :
Le soucie, c'est que ce script plante au niveau des calculs alors que quand j'écris ces lignes de commande dans le Shell, aucun problème, tout fonctionne correctement. De plus j'ai fais un script similaire pour la charge CPU, avec le même genre de calcul, et lui fonctionne à merveille !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33 function memoire() { TOTAL=`echo $(grep MemTotal: /proc/meminfo) | awk '{print $2}'` LIBRE=`echo $(grep MemFree: /proc/meminfo) | awk '{print $2}'` CACHE=`echo $(grep Cached: /proc/meminfo) | awk '{print $2}'` SWAPTOTAL=`echo $(grep SwapTotal: /proc/meminfo) | awk '{print $2}'` SWAPLIBRE=`echo $(grep SwapFree: /proc/meminfo) | awk '{print $2}'` TOTAL=$[TOTAL / 1000] LIBRE=$[LIBRE / 1000] CACHE=$[CACHE / 1000] SWAPTOTAL=$[SWAPTOTAL / 1000] SWAPLIBRE=$[SWAPLIBRE / 1000] UTILISE=$[TOTAL - LIBRE] RELLE_UTILISE=$[UTILISE - CACHE] RELLE_LIBRE=$[TOTAL - UTILISE] SWAP_UTILISE=$[SWAPTOTAL - SWAPLIBRE] echo "Mémoire totale : $TOTAL Mo" echo "Mémoire libre : $LIBRE Mo" echo "Mémoire utilisé : $UTILISE Mo" echo "Mémoire cache : $CACHE Mo" echo echo "Mémoire rééllement utilisé : $RELLE_UTILISE Mo" echo "Mémoire rééllement libre : $RELLE_LIBRE Mo" echo echo "Swap totale : $SWAPTOTAL Mo" echo "Swap libre : $SWAPLIBRE Mo" echo "Swap utilisé : $SWAP_UTILISE Mo" } memoire
Savez vous se qui cloche dans mon script ?
Partager