Erreur dans script mémoire - problème de calcul
Bonjour,
Voici un script que j'ai réalisé pour avoir des informations sur la mémoire d'une machine UNIX :
Code:
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 |
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 !
Savez vous se qui cloche dans mon script ?