Bonjour,
Je développe actuellement un script pour optimiser le temps de traitement des demandes DNS-DHCP que l'onpeut m'effectuer.
Mon problème se situe au nibveau de la commande SED. En fait, j'ai un fichier contenant une liste d'adresse IP et je souhaite supprimer dans ce fichier une adresse IP bien précise que je récupère dans une variable.
Voic mon code, mon problème se situe au niveau de la ligne utilisant SED :
Code :
- while read range addr1 addr2
- do
- if [ "$addr2" == "" ]
- then
- addr=$(echo $addr1 | awk '{gsub(/;/," ",$dhcp_fin);print}') //je récupère l'adresse IP en supprimant le ";" qui se trouve juste après.
- sed "/$addr/d" $rep/testfichierbis > $rep/testfichier //je souhaite suprrimer l'adresse IP en question du fichier contenant la liste d'IP. fi
- done < $rep/monfichier
|
Le problème est que la suppression de l'IP ne fonctionne pas. Pourtant quand je fais un echo de ma variable "addr", il m'affiche bien l'IP (192.168.138.200 par exemple).
J'ai tester en mettant l'adresse IP en dur dans le code et çà fonctionne mais pas avec la variable.
Je pense que çà doit venir du dollar devant la variable qu'il doit interpréter comme un caractère spécial ?
Avez vous une idée ?
Par avance merci,
Cosca
Message édité par cosca44 le 20-10-2008 à 15:50:48