本サイト/記事は移転しました。

約10秒後にリダイレクトします。

シェルスクリプトで画像をリサイズ

 シェルスクリプトとかphpとかえいろいろとやっていたけど、zenityとconvertを使うことを考えて結局シェルスクリプトに。

#!/usr/bin/zsh
size=`zenity --entry --title=画像サイズを指定 --entry-text=640 --text=長辺のピクセル数を入力`
if [ $? -eq 0 ] ;then
	if [[ $size =~ "[^0-9]" ]] 
	then
		zenity --info --text=数字を指定
	else
		for fullpath in $*
		do
			filename=${fullpath##*/}
			basename=${filename%.*}
			dirname=${fullpath%/*}
			extension=${fullpath##*.}
			chdir $dirname
			convert $filename -geometry ${size}\x${size} ${size}_$basename.`echo $extension | tr "[A-Z]" "[a-z]"`
		done
	fi
else
	zenity --info --text=キャンセルされました。 
fi

 おお、はてなダイアリーシンタックス記法にはzshもあるんや。そういえばzshに興味を持ったのははてなスタッフの誰かがzshがいいって書いてあったのを読んだことだった。

 zsh正規表現マッチのパターンをダブルクォーテーションでくくってもくくらなくてもよさそう。