Bo's Oracle Station

查看: 1815|回复: 0

ansible8(循环)

[复制链接]

75

主题

115

帖子

2718

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
2718
发表于 2020-12-12 21:35:15 | 显示全部楼层 |阅读模式
  1. ---
  2. - name: Copy File
  3.   hosts: serverb
  4.   tasks:
  5.   - name: Test Copy
  6.     copy:
  7.       src: "{{ item }}"
  8.       dest: /tmp/
  9.     with_fileglob:
  10.       - ./v5.d/*

  11.   - name: Watch It
  12.     shell:
  13.       cat "{{ item }}"
  14.     loop:
  15.       - /tmp/again.html
  16.       - /tmp/again2.html
  17.     register: v_result

  18.   - name: Result
  19.     debug:
  20.       var: v_result

复制代码
  1. [student@workstation ansible]$ tree  v5.d
  2. v5.d
  3. ├── again2.html
  4. └── again.html

  5. 0 directories, 2 files
  6. [student@workstation ansible]$ cat v5.d/again2.html
  7. again2.html
  8. [student@workstation ansible]$ cat v5.d/again.html
  9. again.html
复制代码
register在一起,如何分开显示:

loop:
      "{{ v_result.results }}"

  1. ---
  2. - name: Copy File
  3.   hosts: serverb
  4.   tasks:
  5.   - name: Test Copy
  6.     copy:
  7.       src: "{{ item }}"
  8.       dest: /tmp/
  9.     with_fileglob:
  10.       - ./v5.d/*

  11.   - name: Watch It
  12.     shell:
  13.       cat "{{ item }}"
  14.     loop:
  15.       - /tmp/again.html
  16.       - /tmp/again2.html
  17.     register: v_result

  18.   - name: Result
  19.     debug:
  20.       msg: "{{ item.stdout }}"
  21.     loop:
  22.       "{{ v_result.results }}"

复制代码

------另一种语法:
  1. ---
  2. - name: Copy File
  3.   hosts: serverb
  4.   tasks:
  5.   - name: Test Copy
  6.     copy:
  7.       src: "{{ item }}"
  8.       dest: /tmp/
  9.     with_lines:
  10.       - ls ./v5.d/*

  11.   - name: Watch It
  12.     shell:
  13.       cat "{{ item }}"
  14.     loop:
  15.       - /tmp/again.html
  16.       - /tmp/again2.html
  17.     register: v_result

  18.   - name: Result
  19.     debug:
  20.       var: v_result
复制代码

shell+register+debug+msg:


  1. ---
  2. - name: Loop Register Test
  3.   gather_facts: no
  4.   hosts: localhost
  5.   tasks:
  6.   - name: Loop Echo Task
  7.     shell:
  8.       echo welcome to "{{ item }}"
  9.     loop:
  10.       - RHCE
  11.       - RHCA
  12.     register: v_result

  13.   - name: Show debug Information
  14.     debug:
  15.       msg: |
  16.         "{{ item.stdout }}"
  17.     loop:
  18.       "{{ v_result.results }}"
复制代码




回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|Bo's Oracle Station   

GMT+8, 2024-4-27 17:08 , Processed in 0.042301 second(s), 24 queries .

快速回复 返回顶部 返回列表