bash での noop [:] の使用例は何ですか? 質問する

bash での noop [:] の使用例は何ですか? 質問する

bash で noop (:) を検索しましたが、適切な情報が見つかりませんでした。この演算子の正確な目的や使用例は何ですか?

私は次のように試してみましたが、次のように動作しました:

[mandy@root]$ a=11
[mandy@root]$ b=20
[mandy@root]$ c=30
[mandy@root]$ echo $a; : echo $b ; echo $c
10
30

この演算子をリアルタイムで使用する場合や、使用が必須となる場所があれば、ぜひ教えてください。

ベストアンサー1

これは歴史的な理由によるものです。コロン組み込みは:とまったく同じです。無限ループなど、戻り値が重要な場合にtrue伝統的に使用されます。true

while true; do
  echo 'Going on forever'
done

:シェル構文でコマンドが必要であるが、何もする必要がないときに使用するのが最適です。

while keep_waiting; do
  : # busy-wait
done

この:ビルトインは、トンプソンシェル、 そうだった現在Unix v6.:は、トンプソンシェルのgotoステートメントのラベルインジケータです。ラベルは任意のテキストにすることができるため、:コメントインジケータとしても機能します( がない場合goto comment、 は: comment実質的にコメントです)。ボーンシェル持っていなかったがgoto保管しました:

よく使われる慣用句:: ${var=VALUE}は、設定されていない場合はvarに設定され、すでに設定されている場合は何も行われません。この構造は変数置換の形式でのみ存在し、この変数置換は何らかの形でコマンドの一部である必要があります。そのため、no-op コマンドが適しています。VALUEvar

参照コロン組み込みの目的は何ですか?

おすすめ記事