【備忘録】Macのkeynoteで書き出した連番の画像名を一括変更する場合
【問題】keynoteから書き出すと「title. 001.png」みたいになる問題
keynoteの設定で変えられるのかわかりませんが、keynoteで各シートを画像として書き出すと連番でネーミングしてくれますが、以下のように微妙なドットとスペースがついて気持ち悪いです。
title. 001.png
title. 002.png
で、ターミナルで一括変換の方法を・・・メモ
■STEP1 書き出した画像フォルダに移動
該当フォルダを右クリックしてoptionを押して「パス名をコピー」する
cd /Users/●●●●/Downloads/titleimage
■STEP2 新しいシェルスクリプトファイルを作成
rename_files.shを作成します。
touch rename_files.sh
■STEP3 スクリプトファイルをテキストで開いてプログラムを書きます
rename_files.shをテキストで開いて以下を書いて保存します。
※画像名(以下の「titleimage」)はkeynoteで保存した時の名前を・・
#!/bin/bash
# 変更前のファイル名のパターン
old_pattern="titleimage."
# フォルダ内のすべての.pngファイルに対して処理を実行
for file in *titleimage.*.png; do
# 新しいファイル名を生成し、UTF-8エンコーディングでリネーム
new_name="titleimage${file//$old_pattern/}" # ファイル名の先頭にtitleimageを追加し、old_patternを削除
new_name=$(echo "$new_name" | iconv -f UTF-8 -t UTF-8) # UTF-8エンコーディングでリネーム
# ファイル名を変更
mv "$file" "$new_name"
done
■STEP4 ターミナルでスクリプトを実行可能に設定します。
これしないと、zsh: permission denied: ./rename_files.shってでますね。
chmod +x rename_files.sh
■STEP5 スクリプトを実行します
最後に以下を実行。
検索したファイル名が間違っていると
mv: rename titleimage.*.png to .*.png: No such file or directory
みたいなエラーがでます。
./rename_files.sh
で、リネームされる・・・はず!
されてなければ再度やりなおしてみましょう。
以上。
これは便利!