将所有文件和目录重命名为小写(包括 unicode)的脚本
script to rename all files & directories into lowercase (including unicode)
(1)
我有大约 200 个目录,大概有 1000 个子目录,其中包含 10,000 个文件。
我想保持名称完整,但将它们全部更改为小写,包括 Unicode 字符,例如“É”(改为“é”)。
你能告诉我如何通过 PowerShell 完成吗?这是我自己的电脑,我有管理员权限。
我相信大多数人都能写出这篇文章,但我的想法是让你来写。所以我们会指出正确的方向。
使用 Get-ChildItem
和 -Recurse
开关来获取目录下的所有文件和文件夹。
使用ToLower()
方法将字符串转换为小写。
使用Rename-Item
重命名您想要的文件夹或目录。
我试过了,它也适用于 unicode。您可能需要以不同方式处理文件和文件夹。我不得不。
编辑:
对于文件:
Get-ChildItem C:\temp -Recurse -File | ForEach-Object{ Rename-Item -Path $_.FullName -NewName $_.name.ToLower()}
我对文件夹和文件使用的命令,希望对您有所帮助。
for /r "G:\Teste" %D in (.) do @for /f "eol=: delims=" %F in ('dir /l/b/ad "%D"') do @ren "%D\%F" "%F"
for /r "G:\teste" %D in (.) do @for /f "eol=: delims=" %F in ('dir /l/b/a-d "%D"') do @ren "%D\%F" "%F"
(1) 我有大约 200 个目录,大概有 1000 个子目录,其中包含 10,000 个文件。
我想保持名称完整,但将它们全部更改为小写,包括 Unicode 字符,例如“É”(改为“é”)。
你能告诉我如何通过 PowerShell 完成吗?这是我自己的电脑,我有管理员权限。
我相信大多数人都能写出这篇文章,但我的想法是让你来写。所以我们会指出正确的方向。
使用 Get-ChildItem
和 -Recurse
开关来获取目录下的所有文件和文件夹。
使用ToLower()
方法将字符串转换为小写。
使用Rename-Item
重命名您想要的文件夹或目录。
我试过了,它也适用于 unicode。您可能需要以不同方式处理文件和文件夹。我不得不。
编辑: 对于文件:
Get-ChildItem C:\temp -Recurse -File | ForEach-Object{ Rename-Item -Path $_.FullName -NewName $_.name.ToLower()}
我对文件夹和文件使用的命令,希望对您有所帮助。
for /r "G:\Teste" %D in (.) do @for /f "eol=: delims=" %F in ('dir /l/b/ad "%D"') do @ren "%D\%F" "%F"
for /r "G:\teste" %D in (.) do @for /f "eol=: delims=" %F in ('dir /l/b/a-d "%D"') do @ren "%D\%F" "%F"