主にbashとかkshの話 404 Blog Not Found:perl - glob,readdir, and regexpを読んで、昔Shellのグロブ展開でハマったことを思い出したので適当に書いておく。 Shellスクリプト等で複合コマンドの[[ ... ]]とtestコマンドと同等の[ ... ]をきちんと使い分けている人は意外と少ないのでは無いかと思う。[[ ... ]]も[ ... ]の違いはグロブ展開するかしないかの違いと言ってよいだろう。 変数$hogeが文字列"hoge"から始まる文字か評価したい場合を考えてみる。 if [ $hoge = hoge* ];then # .... fi # or if [ $hoge = "hoge*" ];then #.... fiなどとやって怒られた経験のある人はたくさんいると思う。なぜダメかというと、[ ... ]はtestコマン