在powershell中删除文件名中不必要的部分

时间:2018-02-04 20:11:05

标签: regex powershell

对不起,我知道这是一个菜鸟问题,但我现在研究了5个多小时,无法弄清楚如何实现我的目标。

我有一个包含大量文件的文件夹:

“艺术家 - Song Tttle(英尺露丝B)(产品Blulake)-28GpKacWLWI.mp4”
“其他一些艺人 - Song Tittle [HD] -ZN9cJvl-P4c.mp4”
“DNMO& Sub Urban - Broken(官方抒情视频)-KZT-_VW-k38.mp4”

我想将它们全部重命名为: “艺术家 - 宋Tttle(英尺。露丝B)(产品Blulake).mp4”
“其他一些艺术家 - Song Tittle [HD] .mp4”
“DNMO& Sub Urban - Broken(官方歌词视频).mp4”

请帮忙!

1 个答案:

答案 0 :(得分:0)

现在这将取决于文件名的一致性,但实质上是循环遍历目录中的所有文件,并重命名它们应该有效。类似的东西:

$files = Get-ChildItem c:\whereever
foreach ($file in $files) 
{
                $name = $file.name
                $ext = $file.extension
                $parts = $name -split '-'
                $newname = $parts[0] + "-" + $parts[1] + $ext
                Rename-Item -Path $name -NewName $newname
}
dir

您可能希望将其包装在条件中以仅影响某些文件类型等。

- 我在手机上写了这个。我还没有测试过。