・bash スクリプト
某所の原稿で最近のbashの変数展開回りの機能をあれこれ調べてたついでに書いてみた、指定したディレクトリ以下のavifな形式の画像ファイルをjpg形式に変換して、zipファイルに纏めるためのスクリプト。
# 何に使うのかはナイショ(w
#!/bin/bash tdir=$1 pushd "${tdir}" for i in *avif ; do heif-convert $i ${i/avif/jpg} done popd zip -r "${tdir}".zip "${tdir}"/*jpg
以前は、空白文字を含むファイル名やディレクトリ名を処理するためにIFSをイジったりしてたけど、変数名を"..."で括るだけで問題なく処理できるようになったのはちょっとビックリ。
このあたり、bshの仕様でシェルスクリプトを学んだから、未だに文字列の有無のチェックに
if [ "${tst}.x" != ".x" ]; then ...
みたいな書き方をしてしまうあたりから学び直さないといけないなぁ。。