I want to replace all space characters into "_" in names of all subfolders and files. Unfortunately when I type:
Get-ChildItem -recurse -name | ForEach-Object { Rename-Item $_ $.replace(" ","") }
Get-ChildItem -recurse -name | ForEach-Object { Rename-Item $_ $_.replace(" ","_") } Error message:
Rename-Item : Source and destination path must be different. At line:1 char:60
- Get-ChildItem -recurse -name | ForEach-Object { Rename-Item <<<< $_ $.replace(" ","") }
- CategoryInfo : WriteError: (PATH_HERE) [Rename-Item], IOException
- FullyQualifiedErrorId : RenameItemIOError,Microsoft.PowerShell.Commands.RenameItemCommand
How I should improve this short code?