I'm new to powershell and wanted to know if there's a way to remove a character from a file name. The character I'm trying to remove is a dash "-" and sometimes there are 2 or 3 dashes in the file name. Is it possible to have it rename files that have a dash in them?
Get-Item .\some-file-with-hyphens.txt | ForEach-Object {
Rename-Item $_ ($_.Name -replace "-", "")
}
This question may be more suitable for SuperUser.
To remove or replace characters in a file name use single quotes '
and for "special" characters escape them with a backslash \
so the regular expression parser takes it literally.
The following removes the $
(dollar sign) from all file names in your current directory:
Get-Item * | ForEach-Object { rename-item $_ ($_.Name -replace '\$', '') }
the following is the same as above using the shorter alias for each command:
gi * | % { rni $_ ($_.Name -replace '\$', '') }
The following is removing the standard character "Z
" from all file names in your current directory:
gi * | % { rni $_ ($_.Name -replace 'Z', '') }
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With