ファイル名内のすべてのアンダースコア文字 ( _
) をスペース ( ) に置き換えたい。
_
置換する文字がたくさんある場合、これをすばやく行うにはどうすればよいでしょうか?
答え1
vbScript がそれを実行します。次の内容を含む「rename_underscores.vbs」というファイルを作成します。
Set objFso = CreateObject("Scripting.FileSystemObject")
Set Folder = objFSO.GetFolder("c:\test\")
For Each File In Folder.Files
sNewFile = File.Name
sNewFile = Replace(sNewFile,"_"," ")
if (sNewFile<>File.Name) then
File.Move(File.ParentFolder+"\"+sNewFile)
end if
Next
フォルダー名が正しいことを確認してください。(例では、c:\test を使用しました) 次に、ファイルをダブルクリックして名前を変更します。
答え2
編集:Windows 10と11では、これが可能になりました(その他多数)をエクスプローラーで直接パワーリネームMicrosoftの無料PowerToysパッケージの拡張機能。PowerToysには他にも素晴らしい拡張機能が多数もそうです。残念ながら、Windows 7 では利用できませんが、2010 年以降に OS をアップグレードしたのではないでしょうか? ;-)
他の人が言っているように、スクリプトやバッチ ファイルを使用せずに、必要な操作を正確に実行する方法はありません。たとえば、PowerShell では、必要な操作を非常に簡単に実行できます。
cd "C:\Users\MyName\Documents\MyDirectory"
# by default, -replace is case-insensitive (equivalent to -ireplace)
# for case-sensitive, use -creplace
Dir | Rename-Item –NewName { $_.name –replace "_"," " }
「C:\Users\MyName\Documents\MyDirectory」を自分のディレクトリへのパスに置き換えてください。
詳細とその他のオプションについては、できるエクスプローラーだけを使用して行う場合は、こちらをご覧ください:http://www.howtogeek.com/111859/how-to-batch-rename-files-in-windows-4-ways-to-rename-multiple-files/
答え3
次のようなサードパーティツールの使用をお勧めします一括名前変更ユーティリティ無料で、インストーラーのサイズは 1 MB 未満です。
答え4
ここは私のバッチ名前変更 Ruby スクリプト他のバッチ名前変更ツールは使用したことはありませんが、私のスクリプトは非常に使いやすく、非常に多用途だと思います。あなたの場合のコマンドは次のとおりです。
ruby bren.rb *_* "_/ "
私は、bren.rb を任意のディレクトリから実行可能ファイルとして実行できるように Windows 環境を設定しました。