Yes ! J'ai remarqué pour le equals et j'ai déjà changé.
Encore un problème, chaque fois qu'il essayait de changer le nom erreur ou non il mettait dans mes logs :(
j'ai changé le code et c'est OK maintenant. J'ai utilisé le $error[0] ;)
Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35 $Path = "U:\Powershell\Script_renommer" $OldText = "bieo" $NewText = "bien" $logFile = 'u:\test.txt' $a = Get-Date "Lancement du Script de renommage : " + $a >> $logfile Get-ChildItem $Path -Recurse | %{$_.FullName} | Sort-Object -Property Length -Descending | % { Write-Host $_ $Item = Get-Item $_ $PathRoot = $Item.FullName | Split-Path $OldName = $Item.FullName | Split-Path -Leaf $NewName = $OldName -replace $OldText, $NewText $NewPath = $PathRoot | Join-Path -ChildPath $NewName if ($OldName.Equals($OldText)) { Rename-Item -Path $Item.FullName -NewName $NewPath if ($error[0]){ $a = Get-Date $erreurInfo = "Impossible de modifier " + $item.Fullname + " "+ $a $erreurInfo >> $logFile $error.clear() } } } $a = Get-Date "FIN : " + $a >> $logfile