Script de récupération d'adresse IP

Aminata1 -  
 Aminata1 -
Bonjour,

Je travaille actuellement sur un projet de déploiement et pour me faciliter la tâche j'ai essayé de mettre en place un script.

Ce script devrait récupérer l'adresse IP du terminal et en fonction de celle-ci faire une comparaison avec les variables que j'ai prédéfinies plus haut dans le script.

Ainsi en fonction de l'adresse du terminal, il doit aller chercher un fichier dans un dossier spécifique (sur le serveur) et le copier en local.

Cependant ça ne marche pas vraiment. Je récupère bien l'adresse IP du terminal que je stocke dans une variable "Local_IP" mais j'ai l'impression que ça capote au niveau de la comparaison.

Voici le code :

echo off

Rem attribution de valeurs aux variables - Correlation entre @IP et nom court de site
set "adresseFRSAV=10.12.113"
set "adresseFRLON=10.4.110"
set "adresseFROUS=10.11.110"

rem Recuperation de l'adresse IP dans une variable
for /F "tokens=15-17 delims=:." %%i in ('"ipconfig^| findstr IPv4 | more +1"') do SET LOCAL_IP=%%i.%%j.%%k && echo %LOCAL_IP:~1%

rem Comparaison entre l'adresse IP et les valeurs des variables adresseFRLON - adresseFRSAV et adresseFROUS
if "%LOCAL_IP%"=="%adresseFRSAV%" goto :0
if "%LOCAL_IP%"=="%adresseFRLON%" goto :1
if "%LOCAL_IP%"=="%adresseFROUS%" goto :2


:0
xcopy \\demeesap0852\A3I\TAHO_CONFIG\FRSAV\%COMPUTERNAME%\TAHO.INI D:\A3I\ /Y
rem pause > nul
goto :end

:1
xcopy \\demeesap0852\A3I\TAHO_CONFIG\FRLON\%COMPUTERNAME%\TAHO.INI D:\A3I\ /Y
rem pause > nul
goto :end


:2
xcopy \\demeesap0852\A3I\TAHO_CONFIG\FROUS\%COMPUTERNAME%\TAHO.INI D:\A3I\ /Y
rem pause > nul
goto :end

:end
rem pause

Pourriez-vous m'aider svp à trouver mon erreur ? Je compte vraiment sur vous.

Merci !

Cordialement

2 réponses

barnabe0057 Messages postés 14455 Date d'inscription   Statut Contributeur Dernière intervention   4 925
 
Bonjour,

Quand tu postes du code merci d'utiliser les balises de code :
https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code

Essaie ceci pour récupérer ton adresse ip :
rem Recuperation de l'adresse IP dans une variable
for /f "tokens=2 delims=[]" %%A in ('ping %COMPUTERNAME% -4 -n 1 ^| findstr /C:"%COMPUTERNAME%"') do set "LOCAL_IP=%%A" & echo %LOCAL_IP%


0
barnabe0057 Messages postés 14455 Date d'inscription   Statut Contributeur Dernière intervention   4 925
 
En optimisant le reste du script ça donnerait ça :

echo off
setlocal enableextensions enabledelayedexpansion

Rem attribution de valeurs aux variables - Correlation entre @IP et nom court de site
set "FRSAV=10.12.113"
set "FRLON=10.4.110"
set "FROUS=10.11.110"

rem Recuperation de l'adresse IP dans une variable
for /f "tokens=2 delims=[]" %%A in ('ping %COMPUTERNAME% -4 -n 1 ^| findstr /C:"%COMPUTERNAME%"') do set "LOCAL_IP=%%A" & echo.!LOCAL_IP!

rem Comparaison entre l'adresse IP et les valeurs des variables FRLON - FRSAV et FROUS
for %%E in (FRSAV FRLON FROUS) do if "%LOCAL_IP%"=="!%%~E!" (call :copie %%E)

pause
exit

:copie
xcopy \\demeesap0852\A3I\TAHO_CONFIG\%1\%COMPUTERNAME%\TAHO.INI D:\A3I\ /Y
rem pause > nul
goto :eof
0
Aminata1
 
Bonsoir,

D'accord pas de soucis concernant l'utilisation des balises :) .

Merci beaucoup pour vos réponses.

J'ai trouvé mon erreur : Il n'y a que la première condition "if" qui est prise en compte dans le script. Raison pour laquelle ça ne marchait sur qu'un seul de mes sites.

Je vais le modifier en fonction de vos réponses et vite vous faire retour.

Merci à vous !!!!
0