シェルスクリプトを作成してるとよくあるパターン。
最初はこんな感じに書いていたけど、
#!/bin/shTARGET_DIR="./result"
if [ ! -d ${TARGET_DIR} ]; then
mkdir -p ${TARGET_DIR}
fi
以下の様に if を使わずかけるんですね、なるほどと思いました。
#!/bin/shTARGET_DIR="./result"
[ ! -d ${TARGET_DIR} ] && mkdir -p ${TARGET_DIR}
対象ディレクトリが無かったらエラー出力して終了したい場合はこんな感じで
[ ! -d ${VAR_DIR} ] && echo "ディレクトリないよ!" && exit 1
'[' 自体が test コマンドと同等であり(ls /bin すると [ というコマンドが見つかります、man [ を見ると test コマンドの解説が表示されました)、
その真偽と && を組み合わせることによって後方のコマンド実行をコントロールするって事なんですね。