トップ «前の日記(2008-08-16) 最新 次の日記(2008-08-24)» 編集

Ussy Diary


2008-08-18

[Shell]シェルスクリプトで短く if/else による代入を行う

すでに変数に値がある場合はその値を利用し、ない場合はデフォルト値を適用する場合 JavaScript だとよくこう書きます。

JavaScript

console.log(value || "default");

シェルでいつも if else を書いていて何かないかなーと思いつつ、ようやく知ることができました。下は第 1 引数が与えられていたらそれを利用し、ない場合は default という文字列を利用しています。

sh

#!/bin/sh
echo ${1:-default}

あるアプリケーション、コマンドに対してパラメータを渡すシェルスクリプトをこれまで条件分岐で変数セット、なんてことをしていましたがワンライナーで書けるようになりました。ミニ便利。

シェルの変数に慣れる