コンピュータや音楽の事書いてます

bash if文 メモ

数字である事の判定関数

function isnum() { expr "$1" : '[0-9]*$'; }; 

12が数値であり、20よりも低い場合、yes

n="12"
if isnum $n > /dev/null && [ $n -lt 20 ]
  then echo yes
  else echo no
fi

否定は!マーク。

if ! isnum $n >/dev/null; then echo true; else echo false; fi

大カッコの手前でも後でもイケる。

if [ ! "a" = "b" ]; then echo yes; fi
if ! [ "a" = "b" ]; then echo yes; fi