dimanche 1 mars 2015

Rename-Item fails when there are brackets (regex/escaping issue)

I am simply trying to rename files using PowerShell, but the script below does not work when there are brackets:



$old = [regex] '_Jackson\(UK\)_'
$new = [regex] '_Jackson\(US\)_'
get-childitem "K:\CustomerVideos" -include @("*.webm","*.mp4","*.mkv") -recurse | foreach-object { rename-item $_ -newname ( $_.name -creplace $old,$new ) }


Rename-Item : Cannot rename because the target specified represents a path or device name.


It does work when $old and $new do NOT contain brackets so I guess it's an escaping issue, yet I'm already using backslashes… what is wrong? Thank you.


Aucun commentaire:

Enregistrer un commentaire