在buk

时间:2016-08-16 16:35:14

标签: powershell

我有批量图像文件,我想通过PowerShell将其文件名更改为Title Case。

例如:

  

文件名如this.jpg

致:

  

文件名赞This.jpg

我在子文件夹中有700多个文件 我试过这段代码:

Get-ChildItem "C:\temp\new" -recurse |Where {-Not $_.PSIsContainer} |Rename-Item -NewName {$_.FullName.TOUPPER()}

但是这段代码将所有字母都大写。

1 个答案:

答案 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)}