「echo$-」の出力を理解する方法は?

「echo$-」の出力を理解する方法は?

出力を理解する方法はecho $-?一種の国旗キャラクターのように見えます。グーグルしても手がかりが見つかりません。

ベストアンサー1

これはシェルフラグの値を表します。POSIXで定義:

-

set(ハイフン)呼び出し時に指定された特別な組み込みコマンドを介して、またはシェルによって暗黙的に現在のオプションフラグ(文字列で連結された単一文字オプション名)に拡張されます。

これzsh マニュアル簡単に言及:

-set<S>呼び出されたときまたはコマンドを介してシェルに提供されるフラグsetopt

〜のようにバッシュマニュアル説明からset

現在のオプションセットはで見つけることができます$-

出力を理解するには、echo $-シェルのマニュアルでオプションを探す必要があります。たとえば、Bashのecho $-出力とは、オプションが有効になっている(詳細については参考文献を参照)、シェルが対話型()であり、標準入力()から読み取られることを意味しますhimBHs-h-m-B-Hhelp set-i-s

おすすめ記事