Модуль community.general.read_csv — чтение CSV-файла
Примечание
Этот модуль входит в коллекцию community.general (версия 12.6.1).
Возможно, эта коллекция уже установлена, если вы используете пакет ansible. Она не входит в ansible-core. Чтобы проверить, установлена ли она, выполните ansible-galaxy collection list.
Для установки используйте: ansible-galaxy collection install community.general.
Чтобы использовать коллекцию в плейбуке, укажите: community.general.read_csv.
Краткое описание
- Читает CSV-файл и возвращает список или словарь, содержащий по одному словарю на каждую строку.
Параметры
Параметр | Комментарии |
|---|---|
delimiter string | Односимвольная строка, используемая для разделения полей. Используя этот параметр, вы меняете значение по умолчанию, применяемое Значение по умолчанию зависит от используемого диалекта. |
dialect string | Диалект CSV, используемый при разборе CSV-файла. Возможные значения: По умолчанию: |
fieldnames list / elements=string | Список имен полей для каждого столбца. Необходим, если в CSV-файле нет заголовка. |
key string | Имя столбца, используемого в качестве ключа результирующего словаря. Если |
path псевдонимы: filename path / обязательный | Имя CSV-файла, из которого считываются данные. |
skipinitialspace boolean | Следует ли игнорировать пробельные символы, непосредственно следующие за разделителем. Используя этот параметр, вы меняете значение по умолчанию, применяемое Значение по умолчанию зависит от используемого диалекта. Варианты:
|
strict boolean | Следует ли вызывать исключение при некорректных входных данных CSV. Используя этот параметр, вы меняете значение по умолчанию, применяемое Значение по умолчанию зависит от используемого диалекта. Варианты:
|
unique boolean |
Атрибуты
Атрибут | Поддержка | Описание |
|---|---|---|
check_mode | Поддержка: полная | Может работать в режиме |
diff_mode | Поддержка: отсутствует | В режиме diff возвращает сведения об изменениях (или о тех, которые, возможно, необходимо внести в |
См. также
См. также
- ansible.builtin.csvfile — плагин поиска
-
Можно использовать для выборочного поиска в CSV-файлах из Jinja.
Примеры
# Example CSV file with header
#
# name,uid,gid
# dag,500,500
# jeroen,501,500
# Read a CSV file and access user 'dag'
- name: Read users from CSV file and return a dictionary
community.general.read_csv:
path: users.csv
key: name
register: users
delegate_to: localhost
- ansible.builtin.debug:
msg: 'User {{ users.dict.dag.name }} has UID {{ users.dict.dag.uid }} and GID {{ users.dict.dag.gid }}'
# Read a CSV file and access the first item
- name: Read users from CSV file and return a list
community.general.read_csv:
path: users.csv
register: users
delegate_to: localhost
- ansible.builtin.debug:
msg: 'User {{ users.list.1.name }} has UID {{ users.list.1.uid }} and GID {{ users.list.1.gid }}'
# Example CSV file without header and semi-colon delimiter
#
# dag;500;500
# jeroen;501;500
# Read a CSV file without headers
- name: Read users from CSV file and return a list
community.general.read_csv:
path: users.csv
fieldnames: name,uid,gid
delimiter: ';'
register: users
delegate_to: localhost
Возвращаемые значения
Общие возвращаемые значения описаны здесь; ниже перечислены поля, уникальные для этого модуля:
Ключ | Описание |
|---|---|
dict dictionary | Содержимое CSV-файла в виде словаря. Возвращается: при успехе Пример: |
list list / elements=string | Содержимое CSV-файла в виде списка. Возвращается: при успехе Пример: |
Ссылки на коллекцию
© 2012–2018 Michael DeHaan
© 2018–2025 Red Hat, Inc.
Licensed under the GNU General Public License version 3.
https://docs.ansible.com/projects/ansible/latest/collections/community/general/read_csv_module.html