シェルの条件式
val=6
for cnt in `seq 1 10`
do
if [ $val -lt $cnt ]; then
break
else
echo $cnt
fi
done
上記はvalがcntより小さい(less than)なら真としている
他に -gt, -le, -ge, -eq, -ne も使える
|| や && , ==, != も使える
文字列の比較もできる
if [ "test" = "test" ]; then
if [ "test" != "test" ]; then
直前に実行したコマンドの実行結果の判定なら
if [ $? -eq 0 ]; then
小数を使いたいなら以下のようにすればよい
val=6.3
total=0
for cnt in `seq 1 10` ; do
if [ `echo "$cnt > $val" | bc` -eq 0 ] ; then
echo "true"
else
echo "false"
fi
done
シェルスクリプトの引数
$@ 引数全部
$0 シェルの名前
$1 第1引数
$# 引数の個数
$? 直前のコマンドの実行結果
if [ 条件 ] ; then 真のときの処理; else 偽のときの処理; fi