私はいくつかの奇妙な振る舞いに出くわしました(おそらく奇妙ではありませんが、私はそれを理解していません!)
bashの省略構文を使用してif/e、seステートメントを記述したいと思います。
[[ 1 -eq 1 ]] && echo "true" || echo "false"
上記のコードの出力は次のようになります。
true
これで、上記のコードは実際に正常に機能します。しかし、この次のコードはそうではありません:
[[ 1 -eq 1 ]] && infMsg "true" || infMsg "false"
infMsgは単なる関数です。上記のコードからの出力は次のとおりです。
true
false
「本当」とだけ言いたい。
&& ||の方法で欠けているものはありますか?構文は関数からの終了コードを処理しますか?