後で呼び出される小さな関数を作成しようとしています。
簡単にするために、12が2、3、4に分かれていることを確認したいと思います。
コードは次のとおりです
divisible_by () {
under_test=12
from=2
to=4
divisible=0
for ((check=from; check<=to; check++)) {
echo "check= $check"
if [ $under_test % $check -ne 0 ]; then
divisible=1
fi
}
return $divisible
}
x=divisible_by
if [ $x -eq 0 ]; then
echo "true"
else
echo "false"
fi
現在私は得る
./5_divisible_by_1_to_10.sh: line 16: [:
divisible_by: integer expression expected
false
また、数値をパラメータとして渡すのは難しいことがわかりましたが、おそらく関連性があります。
ベストアンサー1
divisible_by () {
under_test=12
from=2
to=4
for ((check=from; check<=to; check++)) {
echo "check=$check"
((under_test % check == 0)) || return
}
true
}
if divisible_by; then
echo true
else
echo false
fi