一括小文字ファイル拡張子

一括小文字ファイル拡張子

ファイル拡張子を大文字から小文字に置き換えるコマンドは何ですか?

例:

hello.JPG
hi.JPG

到着する:

hello.jpg
hi.jpg

ベストアンサー1

扱っているファイル拡張子がわかっている場合は、ハードコードできます。

for f in *.JPG
do
  mv "$f" "${f%.JPG}.jpg"
done

より一般的な場合:

for f in *
do 
  e="${f##*.}"
  b="${f%.*}"
  mv "$f" "${b}.${e,,}"
done

大変なことが終わるところbash変数の拡張到着する:

  • 拡張子を保存します。 (ピリオドが見つかるまで、ファイル名の前にできるだけ多くを削除します。)
  • ファイル名の残りの部分を保存します(少なくともファイル名の末尾のピリオドは削除してください)。
  • ファイル名を新しいファイル名に変更し、プロセス,,で拡張子()を小文字に変更します。

おすすめ記事