我想重命名一批文件,在文件名中包含一个递增的数字,但是我希望数字保留四位数,并使用0作为占位符(0001,0002等)。
我相信我必须用'{0:d4}' -f $variable格式化增量增长,但我不能弄清楚。下面的代码适用于两位数的数字,例如: 0010,但只为1-9生成三位数: 001,002等。
如何对四位数增量数字进行格式化?
$number = 00
$files = GCI "C:\work\" -filter *.jpg
foreach($file in $files){
$name = $file.BaseName.Split(".")[0]
$file | Rename-Item -NewName ("$name`_" + ($number++) + "_.jpg")
}发布于 2021-08-05 13:49:27
使用-f运算符自动补零:
$number = 0
$files = GCI "C:\work\" -filter *.jpg
foreach($file in $files){
$name = $file.BaseName.Split(".")[0]
$newName = '{0}_{1:0000}_.jpg' -f $name,($number++)
$file | Rename-Item -NewName $newName
}格式化字符串0000只表示“长度为4的0的左键值”
https://stackoverflow.com/questions/68667762
复制相似问题