Change files and folders to Title Case or start with a Capital Letter for each word using PowerShell

Problem:

I needed to change all files and folders within a directory to use title case so that words all started with capital letters using PowerShell

Solution:

Run the below script:

$directories = gci F:\Ready\Movies -Directory -Recurse
$TextInfo = (Get-Culture).TextInfo

foreach ($directory in $directories) { 

    $newname = $TextInfo.ToTitleCase($directory) + "1"

    Rename-Item $directory.FullName -NewName $newname
}

$directories1 = gci F:\Ready\Movies -Directory -Recurse

foreach ($directory1 in $directories1) { 

    $newname = $directory1 -replace ".$"

    Rename-Item $directory1.FullName -NewName $newname
}

$TextInfo = (Get-Culture).TextInfo
gci F:\Ready\Movies -Filter *.mkv -Recurse | foreach { $NewName = $TextInfo.ToTitleCase($_.BaseName) + ".mkv"; ren $_.FullName $NewName }

Leave a Reply

Your email address will not be published. Required fields are marked *