ファイル名を一括リネームする方法|ターミナルでまとめて名前変更|UNIX Cafe

当ページのリンクには広告が含まれています。
第26回|UNIX Cafe「ファイル名をいっきにリネーム」

UNIX Cafe | 第26回

ミナちゃん

先生〜!旅行の写真を整理したいんですけど、ぜんぶ変な名前なんです……
IMG_1234.JPG とか、DSC_0001.JPG みたいにバラバラで……
どれがどれだか分からなくて大混乱です!

ユニ先生

ふむふむ。それなら、“ファイル名をまとめてリネーム”するのがおすすめだよ。

ミナちゃん

えっ!ファイル名って、まとめて変えられるんですか?
1個ずつ直すしかないと思ってました!

ユニ先生

大丈夫。ターミナルを使えば、いっきに名前を変えることができるんだよ。今日は、そのやり方をいっしょにやってみよう。

目次

今日のゴール

ユニ先生

今日のテーマは、たくさんのファイル名を、一度にわかりやすく変更すること

ミナちゃん

たくさんの画像や書類ファイルがあっても、
すぐ整理できるってことですね!

ユニ先生

そう。写真、音声、文章、なんでも使えるよ。

なぜリネームするの?

ミナちゃん

そもそも、まとめてリネームする必要ってあるんでしょうか?

ユニ先生

もちろんあるよ。ファイルが増えてくると、色々と問題がでてくるんだ。

  • 中身が分からない
  • 探すのに時間がかかる
  • 手動で変更するのは大変
ミナちゃん

確かに!
IMG_0001.JPG が並んでると、どれがどれだか分かりません……。

ユニ先生

名前を整えるだけで、ずっと管理しやすくなるよ。

まずは基本:ひとつだけ名前を変える

ユニ先生

ファイルの名前を変える基本は mv コマンドから。

bash
$ mv old.jpg new.jpg
ミナちゃん

これなら分かります!1枚なら自分でもできそう!

ユニ先生

うん。でも今日は“まとめて”がテーマだから、
ここから一気にレベルアップしていくよ。

まとめて番号をつける(for + mv)

ミナちゃん

たくさんの画像に番号をつけたいんです。
photo_01.jpg photo_02.jpg … みたいに!

ユニ先生

その場合は for 文を使ってみよう

自動で連番リネームするスクリプト

count=1
for file in *.jpg
do
    mv "$file" "photo_${count}.jpg"
    count=$((count + 1))
done
シェリ

スクリプトができたら rename_seq.sh という名前で保存してね。

実行権限をつけて

bash
$ chmod +x rename_seq.sh

実行!

bash
$ ./rename_seq.sh
ミナちゃん

わ! 魔法みたいです!
*.jpg って書くと、“フォルダ内のjpg全部”って意味なんですね!

ユニ先生

その通り。
count という数字を1ずつ増やしながら、
順番に名前をつけていくんだ。

rename コマンドで置き換え

ミナちゃん

ファイル名の先頭をまとめて変えたりできますか?

ユニ先生

できるよ。
rename というコマンドを使うと、とっても便利。

macの場合は Homebrew でインストール

# macOS
bash
$ brew install rename
シェリ

rename は、Linux ではよく使われるコマンドなんだけど、mac には入っていないの。だから、必要な人は“あとから追加”してあげる必要があるのよ。

先頭の文字を置き換える

bash
$ rename 's/IMG_/pic_/' *.JPG
ミナちゃん

IMG_ を pic_ に置き換えてるんですね。

ユニ先生

そうだよ。
s/元/新/ という形で置き換えできるんだ。

プレフィックス(前に文字を足す)

bash
$ rename 's/^/trip_/' *.jpg
ミナちゃん

trip_ っていう文字を、最初に足してるんですね!

サフィックス(最後に文字を足す)

bash
$ rename 's/$/_2024/' *.jpg
ミナちゃん

_2024 が最後につくんだ〜!

ユニ先生

思い出の整理にも便利だね。

部分削除もできる

bash
$ rename 's/-edited//' *.jpg
ミナちゃん

-edited を消してるんですね!
あとで整理し直す時に役立ちそう!

実行前に“確認”もできる

ユニ先生

いきなり変更してしまうのが不安な時は、
“まず表示だけ”して確認する方法があるよ。

bash
$ rename -n 's/IMG_/pic_/' *.jpg
ミナちゃん

-n は、“何が起こるか表示だけ”ってことなんですね。
安心です♪

トラブル対策

ミナちゃん

名前を間違えて変更しちゃったらどうしよう…?

ユニ先生

そんな時のために、作業フォルダをコピーしておくのがおすすめ。
またはリネーム後にファイルを別フォルダに保存する方法もあるよ。

ミナちゃん

準備が大切ですね!

まとめ

ユニ先生

今日は、ファイル名をいっきに変える方法を学んだね。

  • mv → 基本
  • for → 連番に便利
  • rename → 置き換えに最適
ミナちゃん

写真やファイルの整理が、とってもラクになりそうです!

ユニ先生

次回は、“ファイルの中身を調べる”方法を紹介しようと思うよ。

ミナちゃん

楽しみです〜!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次