memlib/memlib.sh

44 lines
1.3 KiB
Bash

# Moloid 21/08/24 V3
#Version faite avec free au lieu de vmstat.
#!/bin/bash
# Nom du fichier de résultat
output_file="result.txt"
# Initialisation du fichier de sortie
echo "Mesures de la mémoire (en MB):" > $output_file
echo "" >> $output_file
# Boucle pour prendre 10 mesures
for i in {1..10}; do
# Récupération de la date et de l'heure actuelles
current_time=$(date +"%Y-%m-%d %H:%M:%S")
# Extraction des valeurs avec la commande free
free_output=$(free -m)
free_mem=$(echo "$free_output" | awk 'NR==2 {print $4}')
buffer_cache_mem=$(echo "$free_output" | awk 'NR==2 {print $6}')
available_mem=$(echo "$free_output" | awk 'NR==2 {print $7}')
# Affichage et enregistrement de la mesure
echo "Mesure $i:"
echo " - Mémoire libre: ${free_mem} MB"
echo " - Buffers/Cache: ${buffer_cache_mem} MB"
echo " - Mémoire disponible: ${available_mem} MB"
echo "Mesure $i:" >> $output_file
echo "Mesure $i - $current_time:" >> $output_file
echo " - Mémoire libre: ${free_mem} MB" >> $output_file
echo " - Buffers/Cache: ${buffer_cache_mem} MB" >> $output_file
echo " - Mémoire disponible: ${available_mem} MB" >> $output_file
# Pause de 1 seconde entre chaque mesure
sleep 1
done
# Notification de fin de script
echo "Les 10 mesures ont été enregistrées dans $output_file."