LinuCレベル2 システムの保守と運用管理 問52
システムの保守と運用管理/システム構成ツールAnsibleのPlaybook等で使われるYAMLの書き方の説明として適切なものはどれか。
当サイトのオリジナル問題(LinuCレベル2の出題範囲「システムの保守と運用管理」に対応。実際の試験問題ではありません)
- Aコメントは行頭の//から行末までで、#は文字列の一部として扱われる
- Bリストの各要素は行頭に*を置いて書き、同じ階層の要素は*の位置をそろえる
- Cキーと値は=で区切り、ネストした階層はタブ文字で字下げして表す
- D階層は空白の字下げで表し、リストの各要素は「- 」で始めて書く
正解:D
解説
YAMLでは、階層を空白(スペース)による字下げで表し、同じ階層の要素は字下げの位置をそろえます。リストの要素は「- 」で始め、キーと値は「キー: 値」のようにコロンと空白で区切ります。コメントは#から行末までです。YAMLの仕様では字下げにタブ文字を使うことは認められていないため、エディタでタブを空白に置き換える設定にしておくと安全です。
選択肢ごとの解説
- A誤り。YAMLのコメントは#から行末までです。//はコメントの記号として扱われません。
- B誤り。YAMLのリストの要素は「- 」で始めます。*は要素の記号としては使いません。
- C誤り。YAMLではキーと値を「キー: 値」の形で区切り、字下げにはタブ文字ではなく空白を使います。キー=値の形は、INI形式のインベントリ等で使う書き方です。
- D正しい。YAMLでは階層を空白の字下げで表し、リストの各要素を「- 」で始めて書きます。