Question Remplacer un mot en fonction de l'OS

Plus d'informations
il y a 11 ans 4 mois #18730 par Philippe
la seule chose que je voir c'est qu'il manque le pipe apres \"(get-Content $MainList32Bits)\"
[code:1]if ($osname -match \"xp\"«»)
{
(get-Content $MainList32Bits)
ForEach-Object {[/code:1]

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 11 ans 4 mois #18735 par Toper
Bonjour,
ça doit être une erreur de copier/coller car le pipe y est.
Mais le probleme persiste.
J'ai l'impression qu'il réécrit le fichier complèt avec les remplacements demandés, puis qu'il colle le tout dans le fichier, ce qui double chaque ligne (une fois l'ancienne, une fois la nouvelle)...:blink: :dry:
Une idée ??

Powershell: la vie est belle :)

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 11 ans 4 mois #18737 par Philippe
en faite tu a autant de ligne que de remplace dans ta boucle foreach

tu doit renvoyer le résultat de chaque remplace dans la variable sinon il est envoyer au pipe

exemple :

[code:1]\"ligne 1\", \"ligne 2\", \"ligne 3\" | ForEach-Object {
$_ -replace \"1\", \"un\"
$_ -replace \"2\", \"deux\"
}

# resultat
#
# ligne un
# ligne 1
# ligne 2
# ligne deux
# ligne 3
# ligne 3[/code:1]
on vois mieux le travail comme ça :
[code:1]\"ligne 1\", \"ligne 2\", \"ligne 3\" | ForEach-Object {
Write-Host $($_ -replace \"1\", \"un\"«») \"`t<- resultat du remplace par un\"
Write-Host $($_ -replace \"2\", \"deux\"«») \"`t< -resultat du remplace par deux\"
}

#ligne un <- resultat du remplace par un
#ligne 1 < -resultat du remplace par deux
#ligne 2 <- resultat du remplace par un
#ligne deux < -resultat du remplace par deux
#ligne 3 <- resultat du remplace par un
#ligne 3 < -resultat du remplace par deux
[/code:1]

si tu renvoie le replace dans la variable $_ :
[code:1]\"ligne 1\", \"ligne 2\", \"ligne 3\" | ForEach-Object {
$_ = $_ -replace \"1\", \"un\"
$_ = $_ -replace \"2\", \"deux\"
$_ = $_ -replace \"3\", \"trois\"
$_ }

# resultat
#
# ligne un
# ligne deux
# ligne trois[/code:1]

Message édité par: 6ratgus, à: 6/01/15 13:10<br><br>Message édité par: 6ratgus, à: 6/01/15 13:11

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 11 ans 4 mois #18761 par Toper
Merci beaucoup !

Powershell: la vie est belle :)

Connexion ou Créer un compte pour participer à la conversation.

Temps de génération de la page : 0.035 secondes
Propulsé par Kunena