删除各种数字和括号

时间:2017-05-05 19:39:06

标签: powershell duplicates

我有各种照片文件,例如DSC0001(0).jpgDSC0002(3).jpgDSC0003(13).jpg

如何删除括号和数字,以便它们显示为DSC0001.jpgDSC0002.jpg等?

目前我一直在使用

Get-ChildItem *.jpg | foreach {
  Rename-Item $_ $_.Name.Replace("(0)", "")
}

每次更改号码。

1 个答案:

答案 0 :(得分:2)

您可以使用RegEx匹配对-Replace运算符执行此操作。

GCI *.jpg|%{
    $NewName = $_.Name -replace '\(\d+\).jpg$','.jpg'
    $_|Rename-Item -NewName $NewName
}

要在子文件夹中包含内容:

GCI *.jpg -recurse |%{
    $NewName = $_.Name -replace '\(\d+\).jpg$','.jpg'
    $_|Rename-Item -NewName $NewName
}

重命名文件夹:

GCI *|Where{$_.PSIsContainer}|%{
    $NewName = $_.Name -replace '\(\d+\)$'
    $_|Rename-Item -NewName $NewName
}