私はAnsibleを使っていくつかの自動化を書こうとしていますが、後でタスクのコマンド出力の複数の部分を使う必要があるプレイブック。Ansible - コマンド出力をキャプチャしていくつかの変数として保存する方法
私は、コマンドを実行しようとしているタスクの持つ「lspciコマンドを| grepのイーサネット| grepのギガビット」
(出力の2行でなければなりません)次のようになります出力:
"02:00.0 Ethernet controller: Intel Corporation 82575EB Gigabit Network Connection (rev 02)"
"02:00.1 Ethernet controller: Intel Corporation 82575EB Gigabit Network Connection (rev 02)
この出力のうち、4つの情報を変数として抽出する必要があります。
var1 - 最初の行のバスが必要です。 "02"にする必要があります。
var2 - 最初の行の機能が必要です。 "0"にする必要があります。
var3 - 2行目のバスが必要です。 "02"にする必要があります。
var4 - 2行目の機能が必要です。 "1"にする必要があります
出力からこれら4つの変数に情報を抽出するにはどうすればよいですか?必ずしも4つの変数すべてを取得する単一のプレイである必要はありません。
ありがとうございました。
あなたは 'register'を使用してみましたが?あなたが試したことを示し、私たちが助けることができます。 – tedder42
レジスタを使用すると、文字列 – JaReg
の非常に小さなサブセットだけが必要なときには出力文字列全体が必要になります。そのため、「線」と表示されるので、Jinjaでピースを抜き出すことができます。 – tedder42