Powershell-重命名。在文件名中插入数字

Powershell- Rename. Insert Number in File name

我一直在尝试使用 Powershell 批量重命名文件夹目录。

我有很多格式为 ab_xxxxx_xxxxx_xxx 的文件夹(其中 x 是数字) 我希望将其重命名为 ab_xxxxxxx_xxxxxxx_100xxx.

我尝试将 Rename Item 与 Replace 命令一起使用,它会在每个 _

之后添加 100

例如。 Get-ChildItem -路径 ab___* -目录 | ForEach-Object -Process { Rename-Item -Path $.Name -NewName ($.Name -replace "_", "_100") }

我也尝试过使用 * 通配符,但它只是将其添加到新文件夹名称中。

任何帮助将不胜感激

规则是,段总是用下划线分隔,并且必须在最后一个段的开头添加“100”吗?如果是这样,您可以这样做:

$x = "ab_839232_28921_1891"
$y = $x -split '_'
$y[-1] = "100" + $y[-1]
$x = $y -join '_'

$x
ab_839232_28921_1001891

希望对您有所帮助

Get-ChildItem $path "ab_*" | where {$_.PSIsContainer} | ForEach-Object { Rename-Item $_.name ($_.name.insert(($_.name.LastIndexOf("_")+1),"100")) }

此 powershell 命令会将名为 "ab_67890_12345_323" 的文件夹重命名为 "ab_67890_12345_100323"。我希望这就是你想要的。