2017-02-16 10 views
2

Rundeck docsRundeckの@ option.message @ exampleのアットマークは、bashの意味は何ですか?

echo [email protected]@ ;# replacement token

私たちは、この構文を使用し、それは罰金だ含め、その後、いくつかの方法でスクリプトによって参照することができますmessageオプション(パラメータ)を定義する例を与えるが、私はそれらの2つが実際には@ sの何も考えていない平均 bashに;私は[email protected]以上の言及、またはコメント内の "replacement token"に関連するものは何も見つかりません。

答えて

2

the docsあなたがリンクしたのは、Rundeckが扱う「置き換えトークン」です。つまり、Rundeckはコマンドをbashに渡す前に@[email protected]を置き換えます。したがって、彼らは何かを打つことを意味しません:)。具体的には、

トークン展開を含むインラインスクリプトワークフローステップは、一時ファイルに展開され、一時ファイルには平文オプション値が含まれます。

だから、bashは一時ファイル拡張後、なし@[email protected]シーケンスとリテラルテキストとしてそれらの値を持つを見ています。

ドキュメントには、「オプションが空白の場合、または設定されていない場合、トークンは空の文字列に置き換えられます」ということにも注意してください。したがって、特定のトークンが定義されていないと、@[email protected]シーケンス全体が消えます。

this section on script usageおよびthis section on context variablesも参照してください。

+0

ああ、ありがとう。私はあなたが最初に引用したビットを見ていましたが、コンテキストによって、オプションを保護するように見えるようになりました。コンテキスト変数docsは私が探していたものでした。 – mrec

関連する問題