salut
je suis en train de m'embrouiller alors je demande de l'aide...
le but du jeu est de proposer à l'utilisateur de choisir son serveur...
pour cela, je dois modifier le fichier /etc/hosts qui est formaté comme ça:
@IP nom alias
en fait, il faut que je trouve la ligne ou alias vaut svrrx300,
je retiens le nom associé, il s'agit du serveur courant
je cherche tous les noms qui ont #svrrx300 comme alias,
ce sont les serveurs potentiels
je propose ces noms à l'utilisateur qui doit en choisir un en entrant son nom au clavier
une fois ce serveur choisi, je vais modifier l'alias correspondant de #svrrx300 à svrrx300
puis je change le svrrx300 de l'ancien serveur en #svrrx300
si ce n'est pas très clair tout ça alors n'hésitez pas à poser des questions...
voici mon code:
en fait tou fonctionne jusqu'au sed...je ne voi pas comment mettre et enlever les # devant les svrrx300...
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 #!/bin/sh #cd /etc if [ -f hosts ]; then echo "sauvegarde du fichier hosts en hosts.old" cp hosts hosts.old if [ -f hosts.old ]; then echo "fichier .old créé" svr_old=`gawk -F" " '{if ($3 == "svrrx300") print $2}' hosts` echo "le serveur actuel est $svr_old" echo "les serveurs potentiels sont:" gawk -F" "'{if($3 == "#svrrx300") print $2}' hosts echo "choisissez parmi ces derniers quel serveur vous désirez utiliser (entrez son nom)" read choix_svr echo "vous avez choisi le serveur $choix_svr" echo "modification en cours..." gawk -F" " '{if($2 == $svr_old) sed -e s/svrrx300/\#svrrx300/g}' hosts gawk -F" " '{if($2 == $choix_svr) sed -e s/\#svrrx300/svrrx300/g}' hosts echo "le nouveau serveur est `gawk -F" " '{if ($3 == "svrrx300") print $2}' hosts` else "échec création fichier .old" fi else épas de fichier hosts" fi
quelqu'un a une idée?
cordialement,
jula.
Partager