如何将文件名的一部分转换为文件扩展名?

How can I convert part of a filename to become the file extension?

我从我们的电子邮件服务提供商处下载了一个包含大约 3,000 个文件的备份文件夹。 None 个文件具有关联的文件类型;相反,文件扩展名附加到每个单独文件的名称。例如:

我可以手动将最后一个破折号更改为句点,文件工作正常。我想知道是否有一种方法可以批量转换所有文件,以便可以正确地对它们进行排序和组织。我知道在命令行中我可以执行 ren *. *.jpg 之类的操作,但文件夹中包含几种不同的文件类型,因此它不适用于所有文件。有什么办法可以告诉它把每个文件名中的最后一个“-”转换成“.”吗? ?

我在 Windows 10;无法安装任何文件名转换程序,除非我想与 IT 团队一起度过数周的麻烦。

$ordner = "c:\temp\pseudodaten"
$Liste  = (get-childitem -path $Ordner).Name

cd $ordner
foreach ($Datei in $Liste) { 
   $Length = $datei.length
   $NeuerName=$Datei.Substring(0,$Length-4)+"."+$datei.Substring($Length - 3, 3)
   rename-item -Path $Datei -NewName $NeuerName
}