ステートメント内の関数に引数を渡してから、if
関数が返すものを (bash で) 評価しようとしています。私が得ている結果は正しくありません。これをどのように適切に行うのですか?
#!/bin/bash
foo() {
if [ $1 = "zero" ]; then
echo "0"
else
echo "1"
fi
}
arg="zero"
if foo $arg -eq 0 ; then
echo "entered 0"
else
echo "entered something else"
fi
arg="blah"
if foo $arg -eq 0 ; then
echo "entered 0"
else
echo "entered something else"
fi
望ましい結果ではない:
cknight@macbook:~/work$ ./test.sh
0
entered 0
1
entered 0