我有批量图像文件,我想通过PowerShell将其文件名更改为Title Case。
例如:
文件名如this.jpg
致:
文件名赞This.jpg
我在子文件夹中有700多个文件 我试过这段代码:
Get-ChildItem "C:\temp\new" -recurse |Where {-Not $_.PSIsContainer} |Rename-Item -NewName {$_.FullName.TOUPPER()}
但是这段代码将所有字母都大写。
答案 0 :(得分:4)
因此,使用Get-Culture
的textinfo,PowerShell实际上有一种超级简单的方法。该属性包含一个名为ToTitleCase()
的方法,它将完全(几乎)完成您想要的操作。唯一的区别是它也会把J'在' Jpg'。只是扩展,所以没什么大不了的?
$Culture = Get-Culture
Get-ChildItem "C:\temp\new" -recurse |Where {-Not $_.PSIsContainer} |Rename-Item -NewName {$Culture.textinfo.totitlecase($_.FullName)}