Назад | Перейти на главную страницу

Ansible: преобразовать путь Linux в путь Windows

У меня есть задача:

- name: copy files
  copy:
    src: "c:\\path\\to\\dir{{ item | replace('/','\\') }}"
    dest: "/tmp/{{ item }}"
  with_items:
    - "{{ paths }}"

Я также пробовал: replace(\"/\",\"\\\"), replace(\"/\",\"\\\\\") но ничего не работает, помощь?

paths содержит: project/folder1/bin, project/folder2/bin, и т.д...

Вы можете избежать проблем с кавычками, определив в качестве значения переменную с обратной косой чертой:

- name: copy files
  copy:
    src: "c:\\path\\to\\dir\\{{ item | replace('/', backslash) }}"
    dest: "/tmp/{{ item }}"
  vars:
    backslash: "\\"
  with_items:
    - "{{ paths }}"