比方说,我有多个目录,其中包含需要可执行权限的多个文件。我尝试使用以下yaml,它将确实将所有文件的权限更改为744,但同时也将文件夹files
和bin
更改为744。以任何方式进行操作都会对文件进行更改仅,但没有目录?
- name: chmod
ignore_errors: yes
file:
path: '{{ item.path }}'
state: '{{ item.state }}'
owner: '{{ item.owner }}'
group: '{{ item.group }}'
recurse: '{{ item.recurse }}'
mode: '{{ item.mode }}'
with_items:
- { path: '/opt/files', state: directory, owner: dummy, group: dummy, recurse: true, mode: 744 }
- { path: '/opt/bin', state: directory, owner: dummy, group: dummy, recurse: true, mode: 744 }
答案 0 :(得分:0)
您可以编写如下内容。尽管尚未执行代码,所以可能需要一些调整。
- name: Find files
find:
paths:
- /opt/files
- /opt/bin
recurse: yes
register: file_list
- name: chmod
ignore_errors: yes
file:
path: '{{ item.path }}'
owner: 'dummy'
group: 'dummy'
mode: '744'
with_items:
- “{{ file_list.files }}”