您好我使用以下Powershell脚本来清理一些文件名..
get-childitem -recurse -Include *.mp4 | foreach { rename-item $_ $_.Name.Replace(".", " ") }
简而言之,取代"。"用" " ..但是这也删除了"。"在扩展名之前..有没有办法可以排除最终的"。"所以扩展名没有改变?
答案 0 :(得分:1)
您需要分隔路径,基本文件名和扩展名。幸运的是,Get-ChildItem
返回的对象可供您使用。
get-childitem -recurse -Include *.mp4 | ForEach-Object {
rename-item $_ -newname $(Join-Path -Path $_.DirectoryName -ChildPath "$($_.BaseName.Replace(".", " "))$_.Extension)") -WhatIf }
一旦您确认它将按照您的要求执行操作,请删除-whatif
。