gpt4 book ai didi

powershell - 使用每个文件夹的序列号重命名文件

转载 作者:行者123 更新时间:2023-12-03 01:05:48 25 4
gpt4 key购买 nike

我需要给很多文件夹中的文件编号。

我使用了以下内容:

Get-ChildItem -Recurse -Include *.* | ForEach-Object -Begin { $count = 1 } -Process { Rename-Item $_ -NewName "image_$count.jpg"; $count++ }

它可以工作,但是问题是文件夹之间的编号仍在继续。

例如:
\folder1
image_1.jpg
image_2.jpg
image_3.jpg

\folder2
image_4.jpg
image_5.jpg
image_6.jpg

...

我需要的是在每个文件夹结束并且从下一个文件夹中的数字1开始重命名时停止数字计数。

谢谢。

最佳答案

编辑:
经过所有评论,这是一个更好的答案

$directoryName = $null
$count = 1
Get-ChildItem -File -Recurse -Include *.* |
ForEach-Object {
if ($directoryName -eq $null -or $directoryName -ne $_.DirectoryName) {
$directoryName = $_.DirectoryName
$count = 1
}
Rename-Item $_.fullname "image_$count.jpg" -WhatIf
$count++
}

关于powershell - 使用每个文件夹的序列号重命名文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49039569/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com