Replace a string in batch
heyho
-
dubcek Posted messages 18702 Registration date Status Contributeur Last intervention -
dubcek Posted messages 18702 Registration date Status Contributeur Last intervention -
```batch
@echo off
setlocal enabledelayedexpansion
set "username=%USERNAME%"
set "search=usagerx"
set "replace=%username%"
set "input_file=chemin\vers\ton\fichier.txt"
set "output_file=chemin\vers\ton\nouveau_fichier.txt"
> "!output_file!" (
for /f "delims=" %%a in ('type "!input_file!"') do (
set "line=%%a"
set "line=!line:%search%=%replace%!"
echo !line!
)
)
endlocal
```
@echo off
setlocal enabledelayedexpansion
set "username=%USERNAME%"
set "search=usagerx"
set "replace=%username%"
set "input_file=chemin\vers\ton\fichier.txt"
set "output_file=chemin\vers\ton\nouveau_fichier.txt"
> "!output_file!" (
for /f "delims=" %%a in ('type "!input_file!"') do (
set "line=%%a"
set "line=!line:%search%=%replace%!"
echo !line!
)
)
endlocal
```
3 réponses
bonjour
C:> type f1.txt ***\\serveur123\usagers\usagerx\documents ***\\serveur123\usagers\usagerx\favoris ***\\serveur234\sources\montage\software ***\\serveur123\usagers\usagerx\temp C:> aa ***\\serveur123\usagers\gira12\documents ***\\serveur123\usagers\gira12\favoris ***\\serveur234\sources\montage\software ***\\serveur123\usagers\gira12\temp C:> type aa.bat @echo off setlocal enableDelayedExpansion set username=gira12 for /f "delims=\ tokens=1-3,4,*" %%a in ('type f1.txt') do ( set user=%%d if "!user!" == "usagerx" (set user=%username%) echo %%a\\%%b\%%c\!user!\%%e )