Windows 10,重命名所有子目录中的所有* .jpg文件,编号从1开始

问题描述 投票:1回答:2

我想要解决同一问题,但在Windows 10]中。Recursively rename .jpg files in all subdirectories

我尝试了以下powershell命令,Get-ChildItem -Recurse -Include *.jpg | % { Rename-Item $_ -NewName ('{0:D1}.jpg' -f $i++)}

但它会按顺序重命名文件,而不会在每个子文件夹中将索引重设为1。

我想要解决相同问题的方法,但是在Windows 10中。我使用以下powershell命令Get-ChildItem -Recurse -Include * .jpg |递归重命名我尝试过的所有子目录中的.jpg文件| %{...

powershell recursion batch-rename
2个回答
2
投票

我认为您为此需要两个单独的Get-ChildItem cmdlet。第一个将收集所有子目录,但在循环时,第二个将收集每个目录中的文件:


2
投票

据我所知,您必须将其用作嵌套的foreach:

Foreach ($directory in (Get-ChildItem -Directory)){
     $i = 1
     Get-ChildItem $directory.Fullname -Recurse -Include *.jpg | % { Rename-Item $_ -NewName ('{0:D1}.jpg' -f $i++)}
}

我测试了它,然后它起作用了:)如果它对您有用,请将其标记为可接受的答案。

© www.soinside.com 2019 - 2024. All rights reserved.