我有一个大约60个.jpg图像文件夹的目录,每个图像大约有10张图片。问题是,在每个目录中,图像的顺序都是正确的,但是名称很复杂,一些目录从000.jpg
开始,其他目录在002.jpg
。我想要做的是创建一个脚本,重命名每个目录中的文件,从001.jpg
开始。
我取得了一些成功。以下是在每个目录中执行时都能正常工作的代码。
$i = 1
Get-ChildItem *.jpg | %{Rename-Item $_ -NewName ('{0:D3}.jpg' -f $i++)}
所以我试着让它在根目录下工作而不是我执行60次,每次我都要这样做。到目前为止,我失败了。我尝试从各个部分中分割出来,但现在我甚至不理解我的代码应该做什么。
$dir = Get-ChildItem | ?{ $_.PSIsContainer }
$dir | Foreach-Object{
$i = 1
Get-ChildItem *.jpg | %{Rename-Item $_ -NewName ('{0:D3}.jpg' -f $i++)}}
我说实话,我不太了解PowerShell。这就是为什么我要求您帮助修复代码并使其更好地工作。