ファイル名に含まれる数字を0埋めしてリネームするスクリプト(powershell, python, go)
#!/usr/bin/env python3
# -*- coding: utf-8 -*-
import os, re
def main():
    for f in os.listdir("dummy"):
        num = re.search(r"(\d+)", f).group(1)
        of = "dummy/" + f
        nf = "dummy/dummy{0:03d}.zip".format(int(num))
        try:
            os.rename(of, nf)
            print(of, " >> ", nf)
        except:
            print(u"リネーム前と後が同じです。", nf)
if __name__ == '__main__':
    main()
$dir = "dummy"
$reg = [regex]"(\d+)"
ls $dir | % {
  $name = $_.Name
  $num = $reg.Matches($name)[0].Value
  $padnum = $num.PadLeft(3, "0")
  mv "$dir\$name" "$dir\dummy$padnum.zip"
}
ls "dummy"
package main
import (
	"fmt"
	"io/ioutil"
	"log"
	"os"
	"path/filepath"
	"regexp"
)
func init() {
	log.SetFlags(log.Ldate | log.Ltime | log.Lshortfile)
}
func main() {
	dirName := "dummy"
	// ディレクトリ配下のすべてのファイルの取得
	files, err := ioutil.ReadDir(dirName)
	if err != nil {
		log.Fatal(err)
	}
	re := regexp.MustCompile(`(\d+)`)
	for _, f := range files {
		// 取得したファイルのパスの取得
		fn := f.Name()
		fp := filepath.Join(dirName, fn)
		// ファイルの番号の取得
		m := re.FindString(fn)
		// 0埋めしたファイル名を取得
		nfn := fmt.Sprintf("dummy%03s.zip", m)
		// 0埋めファイルパスの取得
		nfp := filepath.Join(dirName, nfn)
		// ファイルのリネーム
		err := os.Rename(fp, nfp)
		if err != nil {
			log.Fatal(err)
		}
		fmt.Println(fp, " >> ", nfp)
	}
}