Hi, I'm new to scripting and this may be something easy to do.
I'm running a script to rename every file and subfolder inside a folder, it replace caracters such as "ç" for "c" and nullstrings for "_", and also it set the filenames ToLower successfull, but the only problem that I'm having is to set the subfolder's names ToLower, it works for replacing caracters, but don't work for setting to lower case.
Here is the code:
Function Select-FolderDialog
{
param([string]$Description="Select Folder",[string]$RootFolder="MyComputer")
[System.Reflection.Assembly]::LoadWithPartialName("System.windows.forms") |
Out-Null
$objForm = New-Object System.Windows.Forms.FolderBrowserDialog
$objForm.Rootfolder = $RootFolder
$objForm.Description = $Description
$Show = $objForm.ShowDialog()
If ($Show -eq "OK")
{
Return $objForm.SelectedPath
}
Else
{
Stop-Process -processname powershell
}
}
$folder = Select-FolderDialog # the variable contains user folder selection
cd $folder
Dir -Recurse| Rename-Item -NewName { $_.name.ToLower() }
Dir -Recurse| Rename-Item -NewName { $_.name -replace " ","_" }
Dir -Recurse| Rename-Item -NewName { $_.name -replace "-","_" }
Dir -Recurse| Rename-Item -NewName { $_.name -replace "ç","c" }
Dir -Recurse| Rename-Item -NewName { $_.name -replace "á","a" }
Dir -Recurse| Rename-Item -NewName { $_.name -replace "à","a" }
Dir -Recurse| Rename-Item -NewName { $_.name -replace "ã","a" }
Dir -Recurse| Rename-Item -NewName { $_.name -replace "â","a" }
Dir -Recurse| Rename-Item -NewName { $_.name -replace "é","e" }
Dir -Recurse| Rename-Item -NewName { $_.name -replace "ê","e" }
Dir -Recurse| Rename-Item -NewName { $_.name -replace "è","e" }
Dir -Recurse| Rename-Item -NewName { $_.name -replace "í","i" }
Dir -Recurse| Rename-Item -NewName { $_.name -replace "î","i" }
Dir -Recurse| Rename-Item -NewName { $_.name -replace "ó","o" }
Dir -Recurse| Rename-Item -NewName { $_.name -replace "ò","o" }
Dir -Recurse| Rename-Item -NewName { $_.name -replace "ô","o" }
Dir -Recurse| Rename-Item -NewName { $_.name -replace "õ","o" }
Dir -Recurse| Rename-Item -NewName { $_.name -replace "ù","u" }
Dir -Recurse| Rename-Item -NewName { $_.name -replace "ú","u" }
Dir -Recurse| Rename-Item -NewName { $_.name -replace "û","u" }
Dir -Recurse| Rename-Item -NewName { $_.name -replace "~","" }
Dir -Recurse| Rename-Item -NewName { $_.name -replace "´","" }