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



我从我们的电子邮件服务提供商那里下载了一个包含大约3000个文件的备份文件夹。所有文件都没有关联的文件类型;相反,文件扩展名被附加到每个单独文件的名称中。例如:

  • 社区参与-照片-1-jpg
  • 社会责任-31-2012-ng
  • 报告-02-12-15-pdf

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

我使用的是Windows 10;无法安装任何文件名转换程序,除非我想经历IT小组数周的麻烦。

$ordner = "c:temppseudodaten"
$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
}

最新更新