Windowsのコマンドラインを使用して、何千ものファイルの拡張子を*****.jpg
に変更する方法を教えてください。
ren
を使用することができます(renameのように)。
ren *.XXX *.YYY
そしてもちろん、XXXとYYYを適切な拡張子に切り替えます。 from XXX to YYYに変わります。すべての拡張子を変更したい場合は、ワイルドカードをもう一度使用してください。
ren *.* *.YYY
これを再帰的に機能させる1つの方法はFOR
コマンドを使うことです。一致するファイルに再帰的にコマンドを適用するために/R
オプションと共に使用できます。例えば:
for /R %x in (*.txt) do ren "%x" *.renamed
現在のディレクトリから始めて、すべての.txt
拡張子を.renamed
に再帰的に変更します。 %x
は、一致したファイル名を保持する変数です。
そして、あなたは何千ものファイルを持っているので、カーソルが再び明滅し始めるのを待って、それがうまくいったことを示してください。
注:これはcmdでのみ機能します。 PowershellやBashでは動作しません
cMDで
タイプ
ren *.* *.jpg
。すべてのファイルを選択し、*(これまでの名前)とjpgの拡張子に名前を変更します。
振る舞いの変更は「直観的ではない」ことがあります。例えば...
ren * .THM * .jpgはTHMファイルの名前を.jpgに変更します。例:GEDC003.THMはGEDC003.jpgになります
ren * .THM * b.jpgは、THMファイルの名前を* .THMb.jpgに変更します。例:GEDC004.THMはGEDC004.THMb.jpgになります
ren * .THM * .b.jpgはTHMファイルの名前を* .b.jpgに変更します。例:GEDC005.THMはGEDC005.b.jpgになります。
注:Windows用ではありません
Ren-1.0を使うと正しい形式は次のとおりです。
"ren *.*" "#2.jpg"
man ren
から
置換パターンは、ワイルドカードインデックスが埋め込まれた別のファイル名です。各ワイルドカードインデックスは、1から9までの数字が後に続く文字#から構成されます。元のファイル名の中のワイルドカード。
そして
シェルは通常ワイルドカード*と?を展開することに注意してください。renの場合は望ましくありません。したがって、ほとんどの場合、検索パターンを引用符で囲む必要があります。
それは簡単です
ren *.* *.jpg
コマンドプロンプトでこれを試してください
バッチファイルでこれを実行しようとしている人々のためだけに、このコードは働いています:
FOR /R "C:\Users\jonathan\Desktop\test" %%f IN (*.jpg) DO REN "%%f" *.png
この例では、C:\ Users\jonathan\Desktop\testディレクトリにある.jpg拡張子を持つすべてのファイルが* .pngに変更されています。
複数のファイル拡張子を変更します。
ringtone1.mp3
、ringtone2.mp3
をringtone1.wav
、ringtone2.wav
に変更します
これを行う方法は次のとおりです。コマンドプロンプト(CMD)でDドライブに入っているので、次のように使用します。
d:\>ren *.* *.wav
これはファイル拡張子の一例です。WAV、MP3、JPG、GIF、bmp、PDF、DOC、DOCX、TXTのようなあらゆる種類のファイル拡張子を使用できます。
そして、あなたは何千ものファイルを持っているので、カーソルが再び明滅し始めるのを待って、それがうまくいったことを示してください。
私の場合、.StoredProcedure.sql
で終わる800以上のファイルを含むディレクトリがありました(それらは SSMS でスクリプト化されていました)。
上記の解決策はうまくいきませんでした。しかし、私はこれを思い付きました:
( バッチプログラミング - ファイルの相対パスを取得 への回答に基づく)
@echo off
setlocal enabledelayedexpansion
for %%f in (*) do (
set B=%%f
set B=!B:%CD%\=!
ren "!B!" "!B:.StoredProcedure=!"
)
上記のスクリプトは、ファイル名からサブストリング.StoredProcedure
を削除します。私はそれがもっと多くのケースをカバーし、入力を求め、そして全体的により一般的になるように適応できると確信しています。