すべてのファイル(すべて同じ.JPEG)の接尾辞を.jpeg(大文字と小文字)に変更する必要があります。
これを行う簡単な方法はありますか?
デフォルトでインストールされるPerlプログラムrename
を使用します。
rename 's/\.JPEG$/.jpeg/' *.JPEG
最初の引数は、.JPEG
で終わるファイル名に一致するPerl正規表現であり、.jpeg
に置き換えます。
2番目の引数は、一致する必要があるファイルを選択します。この場合、現在のディレクトリ内のすべてのファイルは.JPEG
で終わります。もちろん、別の場所を指定することもできます。
rename 's/\.JPEG$/.jpeg/' ~/Pictures/*.JPEG
私が見た他の答え:
rename s/.JPEG$/.jpeg/ *
-ドットが任意の文字と一致するため、StupidJPEG
などのファイルの名前もStupi.jpeg
に変更されます。 .JPEG$
は正規表現ですrename 's/\.JPEG$/\.jpeg/' *
-動作しますが、現在のディレクトリ内のすべてのファイルをrename
に渡すため、効率が低下します。rename -n 's/.JPEG$/.jpeg/' *.JPEG
--n
オプションは、実際に名前を変更せずに、名前が変更されるファイルを表示します(「ドライラン」)。 *.JPEG
は.JPEG
で後置されたファイルとのみ一致するため、ここではdot-matches-allの問題は存在しません。これは、この特定の使用例に対する最善の解決策ではない可能性がありますが、
for i in *.JPEG; do mv "$i" "$(basename "$i" .JPEG).jpeg"; done
動作します。効率をわずかに高めるために(内部ループでの追加のサブプロセスの呼び出しを回避するために)bashを使用してややこしいことができます。
for i in *.JPEG; do mv "$i" "${i%%.JPEG}.jpeg"; done
このソリューションは、他の何かadditonを実行したい場合(ファイル名を変更する場合、変更された名前をログに記録する場合など)に最も便利です。
このためのツールがあります:
Sudo apt-get install renameutils
または renameutils をクリックします
(まだインストールされていない場合)
できる場所(コマンドラインから):
rename s/\.JPEG$/\.jpeg/ *.JPEG
投稿後すぐに見つかりました:
rename 's/\.JPEG$/.jpeg/' *
Renameコマンドを使用します。移動とは異なり、多くの場合、画像の名前変更を念頭に置いて作成されているため、混乱の原因となります。
このコマンドのようなものが機能するはずです(.JPEGで終わるすべてのファイルについて、.JPEGを.jpegに変更します)
rename -n 's/.JPEG $ /。jpeg /' * .JPEG
parallel で物事を行うことはますます重要になっているので、お勧めします:
parallel mv {} {.}.jpg ::: *.JPG
ただし、このユーティリティはデフォルトではインストールされません。
素敵なGUIソリューションを探していて、複雑なコマンドライン引数をいじりたくない場合は、名前を変更できる素晴らしいNautilusスクリプトがありますファイル。シンプルなインターフェイスと多くのオプションがあります。
ここで利用可能: http://gnome-look.org/content/show.php/Renamer?content=87601