TexteTop
Communauté

Login Membres: 3585


Menu

Liens



flecheAccueil

Bonjour et bienvenue sur Batcher.fr le site de ressource sur la création de scripts MS-DOS. Vous apprendrez les bases de la création de scripts batch, afin de vous simplifier la vie. Vous découvrirez comment, à l'aide d'un simple éditeur de texte il est possible d'aller assez loin.Terminal

 

Mais que sont les Batchs: Un fichier batch est, sous le système d'exploitation Windows, un fichier (ou script) contenant une série d'instructions MS-DOS. Ces fichiers, lorsqu'ils sont lancés, exécutent les commandes contenues dans le fichier. Ces commandes sont alors interprétées par les exécutables cmd.exe et command.com. Les scripts ainsi créer pourront s'exécuter sur les tous les environnements Windows.

 

Vous apprendrez donc à "batcher" en plusieurs étapes, tout d'abord connaître les différentes commandes. Puis créer votre premier batch, ensuite vous pourrez sophistiquer vos batch en intégrant des variables, des fonctions et enfin personnaliser l'affichage. Pour les questions courantes n'hésitez pas à consulter la FAQ, sinon le forum vous accueil.



coin coin

forum  En direct du forum, aider oryandco
le 08/05/20: Rechercher un ligne contenant une chaîne de caractère et la remplacer


Bonjour,

Je suis près du but mais je coince.
Mon objectif est le suivant. Chercher dans un fichier .ini la chaîne de caractère "publicAddr".
Je dois trouver une ligne qui contient :"publicAddr=X" X étant une adresse ip qui varie et remplacer cette ligne par "publicAddr=Y". Y étnt la variable ADRIP que j'arrive à récupérer.
J'ai essayé ce code mais ça ne fonctionne pas.
Je récupère bien l'adresse ip public qu'il va me falloir mettre dans le fichier cible mais c'est tout. Le remplacement ne se fait pas. Mon fichier cible microsip.txt reste vide.....

:: Lecture ip public active
@echo off
for /F "delims=," %%i in ('ipconfig /all^|find "Adresse IPv4. . . . . . . . . . . . . .: 10.221."') do set ADRIP=%%i
set ADRIP=%ADRIP:~44,13%
echo %ADRIP%
pause
:: Commande de renommage
echo off

set FichierATraiter=C:\0Perso\@contract manager\Programmation\MicroSIP.ini
set FichierDeSortie=C:\0Perso\@contract manager\Programmation\microsip.txt
set Source=publicAddr
set Modifie=%ADRIP%

Setlocal enableextensions enabledelayedexpansion
for /f "usebackq delims=*" %%T in ("%FichierATraiter%") do (
Set TempVar=%%T
echo %%T
pause
set TempVar=!TempVar:%Source%=%Modifie%!
echo $TempVar$
echo !TempVar!>>"%FichierDeSortie%"
)
endlocal

Merci d'avance de votre aide.
...

coin coin

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

q Une question, une remarque, n'hésitez pas à visiter le forum