@echo off
REM On vide le fichier de log
copy /Y NUL "iplog.txt" > NUL
REM identificateur de la ligne, a adapter selon le langage
set ip_string="Adresse IPv4"
REM pour ecrire l'adresse au premier passage dans loop
set ip_old=""
:loop
REM On recupere la premiere valeur avec Adresse IPv4 sur la ligne et on la colle dans ip
for /f "usebackq tokens=2 delims=:" %%f in (`ipconfig ^| findstr /c:%ip_string%`) do (
set ip=%%f
goto :next
)
:next
REM pour virer l'espace initial
set ip=%ip:~1%
REM Note: c'est a adapter si on a plusieurs adaptateurs reseau avec des adresses ipv4
REM pour ne parser que quand on a rencontre la ligne avec le bon adaptateur
REM on compare et on ecrit si differentes, puis on memorise la nouvelle valeur
if not %ip_old% == %ip% (
echo %ip% >> "iplog.txt"
set ip_old=%ip%
)
REM delai variable avant de re-tester, ici 60 secondes
REM Si timeout n' est pas dispo sur votre environnement, adapter avec un astuce (ping...)
timeout /t 60 > NUL
goto :loop