代码之家  ›  专栏  ›  技术社区  ›  Pedro Gordo

计算输出结束时的ansible标准输出

  •  0
  • Pedro Gordo  · 技术社区  · 6 年前

    我有一个shell任务,它获取碎片整理配置,并将其存储在一个变量中,如:

    - name: Check if hugepages is disabled
      shell: cat /sys/kernel/mm/transparent_hugepage/defrag
      register: hugepages_status
      changed_when: False
    

    在下面的任务中,我要评估 hugepages_status ,看最后一个字是不是“永远”。我怎样才能读懂 拥抱的地位 只计算字符串中的最后一个单词?

    类似于:

    - name: Disable hugepages
      shell: echo never | sudo tee /sys/kernel/mm/transparent_hugepage/defrag
      when: swap_status.stdout != "*never"
    
    0 回复  |  直到 6 年前
        1
  •  1
  •   error404    6 年前

    无论位置如何,都可以使用“搜索”来搜索字符串。我想这就足够了。如果你只想在最后搜索,请告诉我。

    ---
    - name: play
      hosts: localhost
      tasks:
        - name: Check if hugepages is disabled
          shell: cat /sys/kernel/mm/transparent_hugepage/defrag
          register: hugepages_status
    
        - name: display the output
          debug:
            var: hugepages_status.stdout_lines
          when: hugepages_status.stdout is search('never')