我需要一种方法来重命名目录中的文件,这会导致简单的Rename-Item
. 文件需要相同的 10 位代码,后跟 4 位占位符(请仅提供数字)。
当前文件名:
01_img_0028.JPG 01_img_0029.JPG 02_img_0028.JPG 02_img_0029.JPG
考虑到上面的文件,用 a 重命名文件split
(使用原始名称中的 4 位)会失败,因为会有同名的文件:
B0000000000.0028.JPG B0000000000.0029.JPG B0000000000.0028.JPG B0000000000.0029.JPG
有没有人有想法解决这个问题?这 4 位数字可以是任何数字序列,但如果我们能让最终结果看起来像这样就更好了:
B0000000000.0001.JPG B0000000000.0002.JPG B0000000000.0003.JPG B0000000000.0004.JPG
这是我当前的代码,它将重命名所有唯一文件和第一个重复文件,但在随后将成为重复名称的文件上出错:
$jpgToRename = GCI -Path $pathToRename -Filter '*.jpg' -R
foreach ($jpg in $jpgToRename) {
$splitPath = $jpg.FullName.Split("\\")
$newName = -join ($splitPath[7], ".", $jpg.BaseName, ".PC_850.jpg")
Rename-Item $jpg.FullName -NewName $newName
}