Предполагая, что у вас чисто Windows (т.е. нет Cygwin и др.) И что вы не хотите или не можете установить что-либо для этого, я бы предложил использовать скрипт Visual Basic для этой работы. Вы можете попробовать что-то вроде:
targetDir = WScript.Arguments.Item(0)
WScript.Echo "Operating on files in " + targetDir
Set fsh = CreateObject("Scripting.FileSystemObject")
Set targetFiles = fsh.GetFolder(targetDir).Files
ZeroPadWidth = Len(targetFiles.Count)
FileNumber = 0
For Each File In targetFiles
FileNumber = FileNumber + 1
NewName = targetDir & "\"
For I = 1 To ZeroPadWidth - Len(FileNumber)
NewName = NewName & "0"
Next
NewName = NewName & FileNumber
WScript.Echo "Renaming " & targetDir & "\" & File.Name & ": " & NewName
File.Move(NewName)
Next
Поместите это в файл, например, "rename.vbs"; затем вызовите его из командной строки, указав в качестве единственного аргумента целевой каталог, например:
c:\Users\Username\Desktop> cscript rename.vbs "c:\target\directory"
Он выдаст имена файлов, которые упорядочены по номерам и дополнены нулями слева; если у вас есть каталог с тысячью файлов, вы получите имена в диапазоне от 0001, 0002 ... 0999, 1000.
Нет гарантии, но она должна делать то, что вам нужно. Если это не так, дайте мне знать. (И на всякий случай сделайте безопасную копию целевого каталога; я немного проверил это, и все должно быть в порядке, но всегда есть вероятность ошибки, которую я не уловил.)
Надеюсь это поможет! (Если это произойдет, я надеюсь, что вы примете мнение Синрай о том, чтобы принять ставки близко к сердцу.)