我有大约1500个用number.jpg命名的文件。例如,45312.jpg或342209.jpg或7123.jpg或9898923.jpg或12345678.jpg
分机前的总数应为8位数。因此,如果小于8位,我需要添加前导零,以生成8位数的文件名。
00001234.jpg
00012345.jpg
00123456.jpg
01234567.jpg
我试过这个powershell脚本,但是它在抱怨。
我尝试了这个,但输出相同
$fn = "92454.jpg"
"{0:00000000.jpg}" -f $fn
OR
$fn = "12345.jpg"
$fn.ToString("00000000.jpg")
答案 0 :(得分:10)
答案 1 :(得分:5)
你没错,但是{0:d8}只适用于数字,而不是字符串,所以你需要正确地投射它。
Get-ChildItem C:\Path\To\Files | Where{$_.basename -match "^\d+$"} | ForEach{$NewName = "{0:d8}$($_.extension)" -f [int]$_.basename;rename-item $_.fullname $newname}