Random ansible-读取文件,然后随机选择条目
我用的是Ansible 2.9.10。我正在尝试读取一个包含项目列表的文件。然后我想从这个列表中随机选择3个项目。我试过下面提到的几种方法,但似乎无法解决这个问题。 文件项目列表是一个项目列表,每行一个:Random ansible-读取文件,然后随机选择条目,random,ansible,Random,Ansible,我用的是Ansible 2.9.10。我正在尝试读取一个包含项目列表的文件。然后我想从这个列表中随机选择3个项目。我试过下面提到的几种方法,但似乎无法解决这个问题。 文件项目列表是一个项目列表,每行一个: hammer saw wood ..... 在剧本中,我有: 变量: 文件内容:{{lookup'file',itemList'} 打印文件内容返回widget\hammer\nsaw\nwood。。。。。等 -名称:打印文件内容 调试: msg:文件内容是{{File_contents}}
hammer
saw
wood
.....
在剧本中,我有:
变量:
文件内容:{{lookup'file',itemList'}
打印文件内容返回widget\hammer\nsaw\nwood。。。。。等
-名称:打印文件内容
调试:
msg:文件内容是{{File_contents}}
现在尝试从文件内容中随机选择一项
-名称:选择一个随机项目
调试:
msg:item是{{item}
随机选择:{{file\u contents}
我错过了什么?似乎我让事情变得更难了。TIA您将文件内容作为一行,如下所示:
"msg": "File contents are hammer\nsaw\nwood\npencil\nfork\nspoon\nmobile"
这是1个项目,而不是项目列表,因为行尾字符未标识,并且显示为“\n”字符串序列
一个简单的调整是使用“\n”分隔符拆分1行字符串。直接修改上一个任务时,您将使用:
# Now try to select one random item from file_contents
- name: Select one random item
debug:
msg: "item is {{ item }}"
with_random_choice: "{{ file_contents.split('\n') }}"
干杯