使用PowerShell将前缀8位数字的文件夹重命名为YYYY-MM-DD格式
PowerShell 批量重命名文件夹脚本
预览脚本(无实际修改,建议优先运行确认结果)
仅打印匹配到的文件夹新旧名称,不会执行重命名操作,可用于校验匹配规则是否符合预期:
Get-ChildItem -Directory | Where-Object { $_.Name -match '^\d{8} - ' } | ForEach-Object { $oldName = $_.Name $newName = $oldName.Insert(6, '-').Insert(4, '-') Write-Host "原名称:$oldName --> 新名称:$newName" }
实际执行重命名脚本
确认预览结果无误后运行,直接完成重命名操作:
Get-ChildItem -Directory | Where-Object { $_.Name -match '^\d{8} - ' } | ForEach-Object { $newName = $_.Name.Insert(6, '-').Insert(4, '-') Rename-Item -Path $_.FullName -NewName $newName }
注意事项
- 脚本默认仅处理当前PowerShell工作目录下的第一层文件夹,如需递归处理所有子层级文件夹,可在
Get-ChildItem后添加-Recurse参数 - 重命名操作不可逆,操作前建议备份目标文件夹,或先运行预览脚本确认匹配结果
- 脚本仅匹配「8位数字 + 空格-空格」开头的文件夹,不会误改其他命名格式的文件或文件夹
内容的提问来源于stack exchange,提问作者Coderv9
相关产品推荐
相关产品推荐

