使用powershell将file.jpg.jpg重命名为file.jpg

时间:2016-04-24 13:25:42

标签: powershell

我无意中将一千多个文件命名为filename.jpg.jpg。我希望的最终状态是将文件名设为filename.jpg。我如何使用PowerShell来解决这个问题?

我在博客中尝试了很多示例,发现第一个.jpg显然被视为文件扩展名。任何帮助都将非常感谢,因为我唯一的选择是手动重命名所有文件。

2 个答案:

答案 0 :(得分:1)

试试这个,

<a class="ui button custom-trigger" data-id="my-item-$ID">Click here</a>

它会将.jpg.jpg替换为.jpg

答案 1 :(得分:1)

您可以使用Get-ChildItem cmdlet检索文件,并使用-Filter参数对其进行预过滤。

只要您的工作目录不同,就应该使用FullName属性而不是Name Rename-Item cmdlet。

我在这里使用的regex会转义句点(由Matt提及)并确保匹配文件名的末尾($)。

Get-ChildItem -Path 'YOUR_PATH_HERE' -Filter '*.jpg.jpg' | 
    foreach { Rename-Item $_.FullName ($_.FullName-replace '\.jpg\.jpg$','.jpg') }

注意:如果您需要递归重命名文件,则只需将-recurse添加到Get-ChildItem cmdlet。