小编Anu*_*shA的帖子

使用 Ansible regex_search 提取部分字符串并将输出保存为变量

我在文件中有如下内容。

dataDir=/var/lib/zookeeper
4lw.commands.whitelist=mntr,conf,ruok,stat
syncLimit=2
Run Code Online (Sandbox Code Playgroud)

我想使用 Ansible读取dataDir的值并将其设置为变量。我已经编写了以下代码,但是正则表达式和存储变量都有一些问题。

  - name: Read zoo.cfg content
    shell:
      cmd: cat zoo.cfg
    register: zoo_config_content

  - set_fact:
      my_var: "{{ zoo_config_content.stdout | regex_search('dataDir.*')}}"

  - name: Print
    debug:
      var: my_var
Run Code Online (Sandbox Code Playgroud)

Q1.) 如何改进正则表达式以仅获取/var/lib/zookeeper

Q2.) 如何存储提取的值以在另一个任务中使用?

regex regular-expressions ansible ansible-playbook

4
推荐指数
1
解决办法
1万
查看次数