首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Ansible -用户输入

Ansible -用户输入
EN

Stack Overflow用户
提问于 2018-09-03 02:49:03
回答 1查看 166关注 0票数 0

如果用户被提示输入某些内容,在这种情况下,他们没有输入任何内容,只需按enter键,则将一个“'‘”值放入变量中:

问题示例:

代码语言:javascript
复制
- name: "vs_rule"
  prompt: "enter the associated rule [Press enter to skip or enter in the following format: rule1 rule2]"
  private: no

我想使用与以下代码类似的代码,但我不想将引号传递给LTM (''),因为用户将看到以下错误:"std exception: (basic_string::substr), exiting..."

有没有办法在else之后过滤'‘,而不向LTM发送任何内容?

代码语言:javascript
复制
- "{{ 'tmsh list ltm rule ' + vs_rule + '' if vs_rule else '' |default([]) }}"
EN

回答 1

Stack Overflow用户

发布于 2018-09-03 06:37:10

根据vars_prompt文档(here),在用户未输入任何内容的情况下,您可以为变量添加默认值。

对于您的情况,您可以传递一个空字符串:

代码语言:javascript
复制
- name: "vs_rule"
  prompt: "enter the associated rule [Press enter to skip or enter in the following format: rule1 rule2]"
  private: no
  default: ""

剩下的“代码”就可以工作了。

票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52140099

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档