2017-08-29 105 views
0

我一直在嘗試使用Powershell來批量重命名文件夾目錄。Powershell-重命名。在文件名中插入數字

我有很多被格式化的文件夾ab_xxxxx_xxxxx_xxx(其中x是一個數字) 我希望它被重命名爲ab_xxxxxxx_xxxxxxx_100xxx。

我已經嘗試使用重命名替換命令項,並將其每_

除權後增加了100。 Get-ChildItem -Path ab_ _ _ * -Directory | ForEach-Object -Process {Rename-Item -Path $ .Name -NewName($.Name -replace「_」,「_100」)}

我也嘗試過使用*通配符,但它只是添加了到新的文件夾名稱。

任何幫助,將不勝感激

回答

2

我希望這能幫助

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」文件夾中。我希望這是你想要的。

+0

是的,這正是我需要的。謝謝! –

1

是規則,該段始終以下劃線分隔和「100」已經在最後段的開頭添加?如果是這樣,你可以做到這一點,像這樣:

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

$x 
ab_839232_28921_1001891 
+0

它不那麼高效 – user3813463

相關問題