首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >然后复制with_items

然后复制with_items
EN

Stack Overflow用户
提问于 2016-04-26 16:41:00
回答 2查看 5.8K关注 0票数 1

我有一个重复的模式::

代码语言:javascript
复制
- stat: path={{ home }}/.vimrc
  register: st
- copy: src=.vimrc dest={{ home }}/.vimrc
  when: not st.stat.exists

- stat: path={{ home }}/.gitconfig
  register: st
- copy: src=.vimrc dest={{ home }}/.gitconfig
  when: not st.stat.exists
...

如何使用with_items进行大列表?::

代码语言:javascript
复制
 with_items:
    - .vimrc
    - .bashrc
    - .profile
    - .gitconfig
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-04-26 18:08:49

有时,您甚至不希望复制文件,如果文件存在于目标计算机上,甚至内容也不同。然后您可以这样使用(在您的场景中没有测试它,但我认为它会起作用)

代码语言:javascript
复制
- stat: path="{{ home }}/{{ item }}"
  with_items:
    - .vimrc
    - .bashrc
    - .profile
    - .gitconfig
  register: st


- copy: src="{{ item.item }}" dest="{{ home }}/{{ item.item }}"
  with_items: "{{ st.results }}"
  when: not item.stat.exists

希望这对你有帮助

票数 13
EN

Stack Overflow用户

发布于 2016-04-26 17:05:14

您可以使用强制参数:

代码语言:javascript
复制
- copy: src={{ item }} dest={{ home }}/{{ item }} force=no
  with_items:
    - .vimrc
    - .bashrc
    - .profile
    - .gitconfig

只有当文件还不存在时,Force=no才会写入文件。我想这正是你想要的。

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

https://stackoverflow.com/questions/36870894

复制
相关文章

相似问题

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