フォルダ内のファイルを連番や日付で一括リネームする方法

ファイル操作/圧縮

写真やドキュメントのファイルが「IMG_0001」「IMG_0002」や「scan0001」「scan0002」といった名前で大量に溜まってしまい、後から見返すとどれがどれだかわからなくなることはありませんか?
ファイルを一つずつ名前変更するのはとても手間がかかりますし、数百枚単位になると現実的ではありません。

そんなときに便利なのが 一括リネーム です。ファイル名を連番や日付に揃えることで、整理しやすくなるだけでなく、後から探すのも簡単になります。

連番で一括リネームする

たとえば「photo1.jpg」「photo2.jpg」「photo3.jpg」といった連番に変えたい場合、ターミナルでループ処理を使うと一瞬で変更できます。

count=1
for file in *.jpg; do
  mv "$file" "photo${count}.jpg"
  count=$((count + 1))
done

この例では、フォルダ内のすべての .jpg ファイルが photo1.jpgphoto2.jpgphoto3.jpg… という形に一括変換されます。

日付を付けてリネームする

写真やレポートの整理では、日付を付けて管理すると便利です。

for file in *.txt; do
  mv "$file" "$(date +%Y%m%d)_$file"
done

この例ではファイル名の先頭に今日の日付(例: 20250822)が追加されます。
「いつ作成したデータか」をファイル名だけで判断できるので、プロジェクトや記録の整理に役立ちます。

特定の文字列を置き換えて整理する

既存のファイル名に余計な文字が入っているときは、置換して揃えることもできます。

for file in *old*.txt; do
  newname=$(echo "$file" | sed 's/old/new/')
  mv "$file" "$newname"
done

例えば report_old.txtreport_new.txt に一括で変わります。

一括リネームのメリット

  • 整理が簡単:連番や日付で揃えることで見やすく管理できる
  • 検索性が向上:ファイル名にルールがあるので探しやすい
  • 作業効率アップ:数百ファイルでも一瞬で処理できる

特に写真整理や研究データの管理など、同じ形式のファイルが大量にある場面で効果を発揮します。

まとめ

フォルダ内のファイルを連番や日付で一括リネームすると、整理整頓が格段に楽になります。
手作業で一つずつ変更する必要はなく、コマンドを使えば数秒で完了。後から探しやすくなるだけでなく、作業時間の短縮にもつながります。

効率的にファイルを整理したい方は、一括リネームをぜひ取り入れてみてください。

Bash玄

はじめまして!Bash玄です。

エンジニアとしてシステム運用に携わる中で、手作業の多さに限界を感じ、Bashスクリプトを活用して業務を効率化したのがきっかけで、この道に入りました。「手作業は負け」「スクリプトはシンプルに」をモットーに、誰でも実践できるBashスクリプトの書き方を発信しています。

このサイトでは、Bashの基礎から実践的なスクリプト作成まで、初心者でもわかりやすく解説しています。少しでも「Bashって便利だな」と思ってもらえたら嬉しいです!

# 好きなこと
- シンプルなコードを書くこと
- コマンドラインを快適にカスタマイズすること
- 自動化で時間を生み出すこと

# このサイトを読んでほしい人
- Bashに興味があるけど、何から始めればいいかわからない人
- 定型業務を自動化したい人
- 効率よくターミナルを使いこなしたい人

Bashの世界に一歩踏み出して、一緒に「Bash道」を極めていきましょう!

Bash玄をフォローする

コメント