csvfile – чтение данных из файла TSV или CSV
Обзор
- Поиск csvfile считывает содержимое файла в формате CSV (comma-separated values). Поиск ищет строку, в которой первый столбец соответствует keyname, и возвращает значение во втором столбце, если не указан другой столбец.
Параметры
| Параметр | Варианты/Значения по умолчанию | Настройка | Комментарии |
|---|---|---|---|
| col - | По умолчанию: "1" | столбец для возврата (индекс 0). | |
| default - | По умолчанию: "" | значение для возврата, если значение не найдено в файле. | |
| delimiter - | По умолчанию: "TAB" | разделитель полей в файле, для табуляции можно указать "TAB" или "t". | |
| encoding - | По умолчанию: "utf-8" | Кодировка (кодовая страница) используемого файла CSV. | |
| file - | По умолчанию: "ansible.csv" | имя файла CSV/TSV для открытия. |
Примечания
Примечание
- По умолчанию используется TSV-файл (разделитель — табуляция), а не CSV (разделитель — запятая) ... да, название вводит в заблуждение.
Примеры
- name: Match 'Li' on the first column, return the second column (0 based index)
debug: msg="The atomic number of Lithium is {{ lookup('csvfile', 'Li file=elements.csv delimiter=,') }}"
- name: msg="Match 'Li' on the first column, but return the 3rd column (columns start counting after the match)"
debug: msg="The atomic mass of Lithium is {{ lookup('csvfile', 'Li file=elements.csv delimiter=, col=2') }}"
- name: Define Values From CSV File
set_fact:
loop_ip: "{{ lookup('csvfile', bgp_neighbor_ip +' file=bgp_neighbors.csv delimiter=, col=1') }}"
int_ip: "{{ lookup('csvfile', bgp_neighbor_ip +' file=bgp_neighbors.csv delimiter=, col=2') }}"
int_mask: "{{ lookup('csvfile', bgp_neighbor_ip +' file=bgp_neighbors.csv delimiter=, col=3') }}"
int_name: "{{ lookup('csvfile', bgp_neighbor_ip +' file=bgp_neighbors.csv delimiter=, col=4') }}"
local_as: "{{ lookup('csvfile', bgp_neighbor_ip +' file=bgp_neighbors.csv delimiter=, col=5') }}"
neighbor_as: "{{ lookup('csvfile', bgp_neighbor_ip +' file=bgp_neighbors.csv delimiter=, col=6') }}"
neigh_int_ip: "{{ lookup('csvfile', bgp_neighbor_ip +' file=bgp_neighbors.csv delimiter=, col=7') }}"
delegate_to: localhost
Возвращаемые значения
Общие возвращаемые значения документированы здесь, следующие поля уникальны для этого поиска:
| Ключ | Возвращаемое значение | Описание |
|---|---|---|
| _raw - | значение(я), хранящееся в столбце файла |
Статус
- Этот поиск не гарантирует обратной совместимости интерфейса. [превью]
- Этот поиск поддерживается сообществом Ansible. [сообщество]
Авторы
- Jan-Piet Mens (@jpmens) <jpmens(at)gmail.com>
Подсказка
Если вы заметите какие-либо проблемы в этой документации, вы можете изменить этот документ, чтобы улучшить его.
Подсказка
Элементы конфигурации для каждого типа записи имеют порядок приоритета от низкого к высокому. Например, переменная, расположенная ниже в списке, переопределит переменную, расположенную выше.
© 2012–2018 Michael DeHaan
© 2018–2019 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/ansible/2.9/plugins/lookup/csvfile.html