Question
Fonction replace Modif chaine de caractères
- cedgou
- Auteur du sujet
- Hors Ligne
- Nouveau membre
Réduire
Plus d'informations
- Messages : 1
- Remerciements reçus 0
il y a 1 an 5 mois #33144
par cedgou
Fonction replace Modif chaine de caractères a été créé par cedgou
Bonjour,
Une question j'essaie de modifier dans différents fichiers la chaine de caractère ${userAppDir} ou ${sys:userAppDir} par D:\APPLI\NEOLOAD mais j'ai un petit souci.
En effet,le remplacement se fait bien mais dans tout le fichier apparaît D:\APPLI\NEOLOAD ce qui est un peu gênant .
Auriez vous une idée de ce que j'ai pu oublier ?
Voici mon script :
$installdir= "D:\APPLI\NEOLOAD"
$aremplacer= "${userAppDir}"
$aremplacer2= "${sys:userAppDir}"
# Changement dossier des logs dans le fichier logs.xconfig et log4j.xml
(Get-Content -Path $installdir\conf\logs.xconfig) | foreach { $_ -replace $aremplacer, $installdir } | Set-Content -Path $installdir\conf\logs.xconfig
(Get-Content -Path $installdir\conf\log4j.xml) | foreach { $_ -replace $aremplacer2, $installdir } | Set-Content -Path $installdir\conf\log4j.xml
(Get-Content -Path $installdir\conf\agentlog4j.xml) | foreach { $_ -replace $aremplacer2, $installdir } | Set-Content -Path $installdir\conf\agentlog4j.xml
(Get-Content -Path $installdir\conf\lglog4j.xml) | foreach { $_ -replace $aremplacer2, $installdir } | Set-Content -Path $installdir\conf\lglog4j.xml
(Get-Content -Path $installdir\conf\melog4j.xml) | foreach { $_ -replace $aremplacer2, $installdir } | Set-Content -Path $installdir\conf\melog4j.xml
Vu dans le fichier :
D:\APPLI\NEOLOAD D:\APPLI\NEOLOAD D:\APPLI\NEOLOAD D:\APPLI\NEOLOAD D:\APPLI\NEOLOAD D:\APPLI\NEOLOAD D:\APPLI\NEOLOAD D:\APPLI\NEOLOAD D:\APPLI\NEOLOAD<D:\APPLI\NEOLOAD/D:\APPLI\NEOLOADRD:\APPLI\NEOLOADoD:\APPLI\
NEOLOADoD:\APPLI\NEOLOADtD:\APPLI\NEOLOAD>D:\APPLI\NEOLOAD
D:\APPLI\NEOLOAD D:\APPLI\NEOLOAD D:\APPLI\NEOLOAD D:\APPLI\NEOLOAD D:\APPLI\NEOLOAD<D:\APPLI\NEOLOAD/D:\APPLI\NEOLOADLD:\APPLI\NEOLOADoD:\APPLI\NEOLOADgD:\APPLI\NEOLOADgD:\APPLI\NEOLOADeD:\APPLI\NEOLOADrD:\APPLI\
NEOLOADsD:\APPLI\NEOLOAD>D:\APPLI\NEOLOAD
D:\APPLI\NEOLOAD<D:\APPLI\NEOLOAD/D:\APPLI\NEOLOADCD:\APPLI\NEOLOADoD:\APPLI\NEOLOADnD:\APPLI\NEOLOADfD:\APPLI\NEOLOADiD:\APPLI\NEOLOADgD:\APPLI\NEOLOADuD:\APPLI\NEOLOADrD:\APPLI\NEOLOADaD:\APPLI\NEOLOADtD:\APPLI\
NEOLOADiD:\APPLI\NEOLOADoD:\APPLI\NEOLOADnD:\APPLI\NEOLOAD>D:\APPLI\NEOLOAD
Merci d'avance,
Une question j'essaie de modifier dans différents fichiers la chaine de caractère ${userAppDir} ou ${sys:userAppDir} par D:\APPLI\NEOLOAD mais j'ai un petit souci.
En effet,le remplacement se fait bien mais dans tout le fichier apparaît D:\APPLI\NEOLOAD ce qui est un peu gênant .
Auriez vous une idée de ce que j'ai pu oublier ?
Voici mon script :
$installdir= "D:\APPLI\NEOLOAD"
$aremplacer= "${userAppDir}"
$aremplacer2= "${sys:userAppDir}"
# Changement dossier des logs dans le fichier logs.xconfig et log4j.xml
(Get-Content -Path $installdir\conf\logs.xconfig) | foreach { $_ -replace $aremplacer, $installdir } | Set-Content -Path $installdir\conf\logs.xconfig
(Get-Content -Path $installdir\conf\log4j.xml) | foreach { $_ -replace $aremplacer2, $installdir } | Set-Content -Path $installdir\conf\log4j.xml
(Get-Content -Path $installdir\conf\agentlog4j.xml) | foreach { $_ -replace $aremplacer2, $installdir } | Set-Content -Path $installdir\conf\agentlog4j.xml
(Get-Content -Path $installdir\conf\lglog4j.xml) | foreach { $_ -replace $aremplacer2, $installdir } | Set-Content -Path $installdir\conf\lglog4j.xml
(Get-Content -Path $installdir\conf\melog4j.xml) | foreach { $_ -replace $aremplacer2, $installdir } | Set-Content -Path $installdir\conf\melog4j.xml
Vu dans le fichier :
D:\APPLI\NEOLOAD D:\APPLI\NEOLOAD D:\APPLI\NEOLOAD D:\APPLI\NEOLOAD D:\APPLI\NEOLOAD D:\APPLI\NEOLOAD D:\APPLI\NEOLOAD D:\APPLI\NEOLOAD D:\APPLI\NEOLOAD<D:\APPLI\NEOLOAD/D:\APPLI\NEOLOADRD:\APPLI\NEOLOADoD:\APPLI\
NEOLOADoD:\APPLI\NEOLOADtD:\APPLI\NEOLOAD>D:\APPLI\NEOLOAD
D:\APPLI\NEOLOAD D:\APPLI\NEOLOAD D:\APPLI\NEOLOAD D:\APPLI\NEOLOAD D:\APPLI\NEOLOAD<D:\APPLI\NEOLOAD/D:\APPLI\NEOLOADLD:\APPLI\NEOLOADoD:\APPLI\NEOLOADgD:\APPLI\NEOLOADgD:\APPLI\NEOLOADeD:\APPLI\NEOLOADrD:\APPLI\
NEOLOADsD:\APPLI\NEOLOAD>D:\APPLI\NEOLOAD
D:\APPLI\NEOLOAD<D:\APPLI\NEOLOAD/D:\APPLI\NEOLOADCD:\APPLI\NEOLOADoD:\APPLI\NEOLOADnD:\APPLI\NEOLOADfD:\APPLI\NEOLOADiD:\APPLI\NEOLOADgD:\APPLI\NEOLOADuD:\APPLI\NEOLOADrD:\APPLI\NEOLOADaD:\APPLI\NEOLOADtD:\APPLI\
NEOLOADiD:\APPLI\NEOLOADoD:\APPLI\NEOLOADnD:\APPLI\NEOLOAD>D:\APPLI\NEOLOAD
Merci d'avance,
Connexion ou Créer un compte pour participer à la conversation.
- Laurent Dardenne
- Hors Ligne
- Modérateur
Réduire
Plus d'informations
- Messages : 6302
- Remerciements reçus 68
il y a 1 an 5 mois #33145
par Laurent Dardenne
Tutoriels PowerShell
Réponse de Laurent Dardenne sur le sujet Fonction replace Modif chaine de caractères
Salut,
ceci effectue une substitution :Essaie avec :
ceci effectue une substitution :
$aremplacer= "${userAppDir}"
#[regex]Escape('${userAppDir}')
$aremplacer= '\$\{userAppDir}'
Tutoriels PowerShell
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.100 secondes
- Vous êtes ici :
- Accueil
- forum
- PowerShell
- Entraide pour les débutants
- Fonction replace Modif chaine de caractères