%20%E6%88%BB%E3%82%8A%E5%80%A4%E3%81%8C%E5%BF%85%E8%A6%81%E3%81%A7%E3%81%99%E3%81%8B%3F.png)
if
、while
、ステートメントの条件文の期待値について興味がありますuntil
。明らかに条件文が適切に機能していないように思われるからです。
true
およびfalse
または終了コード、つまり0
または を期待していますか{1-255}
?
答え1
条件文は終了コードをテストします。ゼロは真、ゼロ以外は偽です。コマンドは、ゼロ ( ) 終了コードtrue
を返すため真です。同様に、はゼロ以外の終了コードを返します (実際のところ、 です)。0
false
1
if true; then echo 'happy days'; fi
if false; then echo 'maths has just died a horrible death'; fi
true; echo "exit status is $?" # "0"
false; echo "exit status is $?" # "1"
[ 0 -eq 0 ]; echo "exit status is $?" # "0"
[ 0 -eq 1 ]; echo "exit status is $?" # "1"