Edition fichier ini

Edition fichier ini - Shell/Batch - Programmation

Marsh Posté le 29-08-2016 à 16:59:56    

Bonjour,
 
Je cherche à éditer un fichier ini ou à ajouter une ligne si il ne la trouve pas.
Malheureusement mon script me permet bien d'éditer le ligne. Mais il ne me permet pas d'ajouter une ligne si il ne la trouve pas.
 
Permet l'édition :

Code :
  1. SET "globalsection="
  2. (
  3. FOR /f "tokens=1*delims=" %%a IN (c:\wapt\wapt-get.ini) DO (
  4. FOR /f "tokens=1*delims== " %%b IN ("%%a" ) DO (
  5.  SET repro=Y
  6.  IF "%%c"=="" (
  7.   SET "globalsection="
  8.   IF /i "%%b"=="[Global]" SET globalsection=y
  9.  ) ELSE (
  10.   IF DEFINED globalsection (
  11.    IF "%%b"=="wapt_server" (
  12.     SET "repro="&ECHO(wapt_server=test)
  13.    )
  14.   )
  15.   IF DEFINED repro ECHO(%%a
  16.  )
  17. )
  18. )>%appdata%\newfile.txt
  19. GOTO :EOF


 
wapt-get.ini

Code :
  1. [global]
  2. waptupdate_task_period=120
  3. wapt_server=https://wapt/
  4. repo_url=https://wapt/wapt
  5. use_hostpackages=1


 
 
Voici un de mes tests en ajoutant un else au if %%b = wapt_server :

Code :
  1. SET "globalsection="
  2. (
  3. FOR /f "tokens=1*delims=" %%a IN (c:\wapt\wapt-get.ini) DO (
  4. FOR /f "tokens=1*delims== " %%b IN ("%%a" ) DO (
  5.  SET repro=Y
  6.  IF "%%c"=="" (
  7.   SET "globalsection="
  8.   IF /i "%%b"=="[Global]" SET globalsection=y
  9.  ) ELSE (
  10.   IF DEFINED globalsection (
  11.    IF "%%b"=="wapt_server" (
  12.     SET "repro="&ECHO(wapt_server=test)
  13.    ) ELSE (
  14.     SET "repro="&ECHO(wapt_server=test)
  15.    )
  16.   )
  17.   IF DEFINED repro ECHO(%%a
  18.  )
  19. )
  20. )>%appdata%\newfile.txt
  21. GOTO :EOF

Reply

Marsh Posté le 29-08-2016 à 16:59:56   

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed