【Windows】対象フォルダ内のファイル名を置換するバッチスクリプトの紹介

windows-rename-vbs

ファイル名を置換する名前が決まっていて、リネーマーを立ち上げるのが面倒なのでバッチを探してみました。

引用先

http://www.sakutyuu.com/technology/?p=1467

対象フォルダ内のファイル名を置換するバッチスクリプト

下記のコードをメモ帳に記載して、rename.vbsのように.vbsで保存。あとはクリックして実行するだけです。

Const ForReading = 1 
Const ForWriting = 2
Const ForAppending = 8

Set FSO = CreateObject("Scripting.FileSystemObject")
ShowSubfolders FSO.GetFolder("置換対象のパス")

Set FSO = Nothing

Sub ShowSubFolders(Folder)
    For Each File in Folder.Files
        Fname = File.name
            Dim fs
            Dim fn
            Set fs = WScript.CreateObject("Scripting.FileSystemObject")
            Set fn = fs.GetFile(Folder & "\" & Fname)
            Dim rename
            rename = Fname
            rename = Replace(rename,"変更前の単語","変更後の単語")
            fn.Name = rename
            Set fs = Nothing
            Set fn = Nothing
    Next

    For Each Subfolder in Folder.SubFolders
        ShowSubFolders Subfolder
    Next
End Sub

rename = Replace(rename,"変更前の単語","変更後の単語")の部分を追加して、複数の文字置換も可能です。

まとめ

クリックするだけで、すべてリネームとても便利です!!!

同名が存在する場合エラーになるので、それだけ注意