私は、文字列を作成するために改行文字と結合したい文字列のリストを持っています。これは、ファイルに書き込まれると一連の行になります。しかし、私がjoin()フィルターを使用すると、内部リスト、文字列内の文字で動作し、外側のリストではなく、文字列自体で動作します。Ansibleで文字列のリストに参加するには?
One fish
Two fish
Red fish
Blue Fish
私が代わりに取得することです:
TASK: [Examine the joined string] *********************************************
ok: [hana-np-11.cisco.com] => {
"msg": "B\nl\nu\ne\n \nf\ni\ns\nh"
}
ok: [hana-np-12.cisco.com] => {
"msg": "B\nl\nu\ne\n \nf\ni\ns\nh"
}
ok: [hana-np-13.cisco.com] => {
"msg": "B\nl\nu\ne\n \nf\ni\ns\nh"
}
ok: [hana-np-14.cisco.com] => {
"msg": "B\nl\nu\ne\n \nf\ni\ns\nh"
}
ok: [hana-np-15.cisco.com] => {
"msg": "B\nl\nu\ne\n \nf\ni\ns\nh"
}
私が正しく文字列のリストを連結するにはどうすればよい私はのような出力を取得したい
# Usage: ansible-playbook tst3.yaml --limit <GRP>
---
- hosts: all
remote_user: root
tasks:
- name: Create the list
set_fact:
my_item: "{{ item }}"
with_items:
- "One fish"
- "Two fish"
- "Red fish"
- "Blue fish"
register: my_item_result
- name: Extract items and turn into a list
set_fact:
my_list: "{{ my_item_result.results | map(attribute='ansible_facts.my_item') | list }}"
- name: Examine the list
debug:
msg: "{{ my_list }}"
- name: Concatenate the public keys
set_fact:
my_joined_list: "{{ item | join('\n') }}"
with_items:
- "{{ my_list }}"
- name: Examine the joined string
debug:
msg: "{{ my_joined_list }}"
:ここに私のサンプルコードです改行文字で?
それが正しい変数にフィルタを適用するのに役立ちますので。そして、それが正しい変数であるかどうかを知る学習曲線上のところです。もう一度、ありがとう! – awrobinson