Rechercher : dans
Par :

[script shell] fichier configuration

Dernière réponse le 5 nov 2009 à 17:01:26 sumoelpadre, le 5 nov 2009 à 11:45:43 
 Signaler ce message aux modérateurs

Bonjour,

J'ai fais un petit script qui donne l'activité cpu. J'ai aussi fais une alerte mais je voudrais mettre la valeur de l'alerte dans un fichier de configuration et non dans le scripte directement comme ci dessous:

cpulib=$(vmstat | grep -v procs|grep -v r| tr -s ' '|cut -d " " -f 16) ; cpuocup=$(( 100 - $cpulib )) ;echo "La CPU est occupé a $cpuocup % et libre à $cpulib%" ; if [ $cpuocup -ge 10 ]; then echo "Alerte CPU !!!" ;fi

Merci de votre aide.

Configuration: Linux
Firefox 3.0.15

Meilleures réponses pour « [script shell] fichier configuration » dans :
Exécuter un script shell VoirExécution d'un script Pour pouvoir exécuter un script ou un programme en ligne de commande il y a plusieurs possibilités : 1. Le chemin absolu 2. Le chemin relatif 3. Modifier la variable PATH Note: Le Sha...

1

mamiemando, le 5 nov 2009 à 11:53:32

Ben il suffit de rediriger le flux écrit vers la sortie standard vers un fichier avec l'opérateur > ou >>. L'opérateur > réécrit le fichier avec le résultat de la commande dans le fichier cible, tandis que >> écrit à la suite. Exemple :

ls > pouet.txt
cat pouet.txt
ls >> pouet.txt
cat pouet.txt
ls > pouet.txt
cat pouet.txt


Bonne chance

Répondre à mamiemando

2

swed, le 5 nov 2009 à 11:59:55

Hello,

Si j'ai bien compris, ta valeur de l'alerte est le '10'.

Donc tu peux mettre '10' dans le fichier alerte.conf ;
Et remplacer : if [ $cpuocup -ge 10 ]; then echo "Alerte CPU !!!" ;fi
Par : if [ $cpuocup -ge `cat alerte.conf` ]; then echo "Alerte CPU !!!" ;fi

Cordialement,
Marc.

Répondre à swed

3

dubcek, le 5 nov 2009 à 12:07:37

Hello
echo 10 > fichier.conf
et dans le script
MAXCPU=$(cat fichier.conf)
...
if [ $cpuocup -ge $MAXCPU ]; then echo "Alerte CPU !!!" ;fi

Répondre à dubcek

4

sumoelpadre, le 5 nov 2009 à 12:22:56

Merci a tout le monde pour votre aide!!!!!

++

Répondre à sumoelpadre

5

sumoelpadre, le 5 nov 2009 à 12:43:22

Juste une question: si je veux mettre plusieurs valeurs pour plusieurs paramètres par exemple un pour la CPU et un pour la mémoire je fais comment?

Répondre à sumoelpadre

6

mamiemando, le 5 nov 2009 à 13:07:46

Il faut que tu lises un tutoriel en bash :-)
http://www-gtr.iutv.univ-paris13.fr/Cours/Mat/Systeme/TDTP20­03/tp03.html

Section "Arguments de la ligne de commande"

Bonne chance

Répondre à mamiemando

7

sumoelpadre, le 5 nov 2009 à 13:10:45

J'ai bien lu ce paragraphe mais je ne vois toujours pas comment résoudre mon problème...


Merci quand même.

Répondre à sumoelpadre

8

mamiemando, le 5 nov 2009 à 13:11:52

Tu cherches bien à récupérer les arguments passés à ton programme shell ? Si oui, ceux si sont stockés dans $1, $2 etc...

Répondre à mamiemando

9

sumoelpadre, le 5 nov 2009 à 13:20:02

Non pas du tout. Je t'explique:

J'ai un script ou j'ai mis 2 alertes, une pour la CPU et une pour la mémoire. Pour le moment j'ai mis les 2 valeurs de ses alertes dans 2 fichier .conf . Et je voudrais avoir comment mettre ses 2 valeurs dans un seul fichier .conf .

voici script.sh:

if [ $pourcenmemocup -ge `cat alerteMEM.conf` ]; then echo "Alerte RAM !!!" ;fi
if [ $cpuocup -ge `cat alerteCPU.conf` ]; then echo "Alerte CPU !!!" ;fi

et mes 2 fichier de configurations:

configCPU.conf:

5

configMEM.conf:

50

Répondre à sumoelpadre

10

tibobo_77, le 5 nov 2009 à 13:28:20

If [ $pourcenmemocup -ge `cat alerteMEM.conf` ]; then echo "Alerte RAM !!!" >> ./fichier.conf ;fi
if [ $cpuocup -ge `cat alerteCPU.conf` ]; then echo "Alerte CPU !!!">> ./fichier.conf ;fi

pour vérifier...
cat ./fichier.conf

Répondre à tibobo_77

11

mamiemando, le 5 nov 2009 à 13:28:25

Ah ok, j'ai mal compris ce que tu voulais dire, le mot argument était ambigu.

Ben à ce moment là j'ai répondu à ta question dans le message <1>. Tu écris la première valeur avec > dans ton fichier de sortie, puis tu écris la seconde à la suite dans ce même fichier avec >>.

ma_premiere_commande > fichier.txt
ma_seconde_commande >> fichier.txt


Ou on peut aussi imaginer que tu fasses un cat de tes deux fichiers vers le fichier unifié, mais c'est un peu dommage de passer par des fichiers intermédiaires :

cat fichier1.txt fichier2.txt > fichier.txt


Bonne chance

Répondre à mamiemando

12

tibobo_77, le 5 nov 2009 à 13:29:37

A 5 secondes :p

Répondre à tibobo_77

13

mamiemando, le 5 nov 2009 à 13:31:16

Tu parles ! J'étais loin devant j'ai donné la réponse à 11h53 :-)

Répondre à mamiemando

14

tibobo_77, le 5 nov 2009 à 13:32:29

Je mangeais, snif :'-{

Répondre à tibobo_77

15

sumoelpadre, le 5 nov 2009 à 13:36:51

Ah ok c'est pas grave. Ta compris maintenant ?

Répondre à sumoelpadre

16

mamiemando, le 5 nov 2009 à 13:44:30

Oui on a même répondu à ta question :-) Est-ce que tu as essayé ce que nous venons de t'indiquer ?

Répondre à mamiemando

17

sumoelpadre, le 5 nov 2009 à 13:49:32

Je ne comprend pas du tout. Pourquoi utiliser des redirection?

Répondre à sumoelpadre

18

tibobo_77, le 5 nov 2009 à 13:51:13

Pour ajouter ton message d'erreur a ton fichier.conf...
Test, tu verras ;-)

Répondre à tibobo_77

19

sumoelpadre, le 5 nov 2009 à 14:00:08

Moi je veux juste mettre 2 valeurs dans mon fichier conf.
Je peux même pas test je comprend pas ce que vous me dites.
Si sa ne te dérange pas réécrit mon script mais avec tes modifs sa m'aidera peut être a comprendre

Répondre à sumoelpadre
Collection CommentÇaMarche.net