前提
配列array
にorange
に含まれているかどうかを判定するスクリプトです。
コード
array=('apple''orange''banana''peach')
check_array(){local i
for i in${array[@]};do
if[[${i}=${1}]];then
echo-n"true"return 0
fi
done
echo-n"false"return 1
}if$(check_array "orange");then
echo"Orange exists."else
echo"Orange does not exist."fi
解説
check_arrayについて
for
で配列の文字を1つずつ比較し、引数に渡された値と同一の値があればその時点でtrue
を出力して終了します。
もしfor
が終了したらその時点で値が存在していないことになるのでfalse
を出力して終了します。
if以降について
あとはcheck_array
を実行して値を比較しているだけです。
最後に
もしもっと良い方法があれば教えて下さい