Spec-Zone.ru › Ansible 2.9

read_csv – Чтение CSV-файла

Новое в версии 2.8.

  • Описание
  • Параметры
  • Примечания
  • Примеры
  • Возвращаемые значения
  • Статус

Описание

  • Чтение CSV-файла и возврат списка или словаря, содержащего по одному словарю на строку.

Параметры

Параметр Варианты/Значения по умолчанию Комментарии
delimiter
строка
Односимвольная строка, используемая для разделения полей.
При использовании этого параметра вы изменяете значение по умолчанию, используемое dialect.
Значение по умолчанию зависит от используемого диалекта.
dialect
строка
По умолчанию:
"excel"
Диалект CSV для парсинга CSV-файла.
Возможные значения включают excel, excel-tab или unix.
fieldnames
список
Список имён полей для каждого столбца.
Это необходимо, если в CSV нет заголовков.
key
строка
Имя столбца, используемого в качестве ключа для результирующего словаря.
Если key не задано, модуль возвращает список словарей, где каждый словарь — строка в CSV-файле.
path
путь / обязательно
Имя CSV-файла для чтения данных.

псевдонимы: filename
skipinitialspace
логическое значение
    Варианты:
  • нет
  • да
Игнорировать ли пробелы сразу после разделителя.
При использовании этого параметра вы изменяете значение по умолчанию, используемое dialect.
Значение по умолчанию зависит от используемого диалекта.
strict
логическое значение
    Варианты:
  • нет
  • да
Вызывать ли исключение при плохом вводе CSV.
При использовании этого параметра вы изменяете значение по умолчанию, используемое dialect.
Значение по умолчанию зависит от используемого диалекта.
unique
логическое значение
    Варианты:
  • нет
  • да ←
Является ли ожидаемым уникальность используемого key.

Примечания

Примечание

  • Ansible также поставляется с плагином поиска 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
  read_csv:
    path: users.csv
    key: name
  register: users
  delegate_to: localhost

- 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
  read_csv:
    path: users.csv
  register: users
  delegate_to: localhost

- 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
  read_csv:
    path: users.csv
    fieldnames: name,uid,gid
    delimiter: ';'
  register: users
  delegate_to: localhost

Возвращаемые значения

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

Ключ Возвращаемое значение Описание
dict
словарь
успех
Содержание CSV в виде словаря.

Пример:
{'dag': {'name': 'dag', 'uid': 500, 'gid': 500}, 'jeroen': {'name': 'jeroen', 'uid': 501, 'gid': 500}}
list
список
успех
Содержание CSV в виде списка.

Пример:
[{'name': 'dag', 'uid': 500, 'gid': 500}, {'name': 'jeroen', 'uid': 501, 'gid': 500}]


Статус

  • Гарантированное обратное совместимое интерфейс для этого модуля отсутствует. [превью]
  • Этот модуль поддерживается сообществом Ansible. [сообщество]

Авторы

  • Dag Wieers (@dagwieers)

Подсказка

Если вы заметили какие-либо проблемы в этой документации, вы можете редактировать этот документ, чтобы улучшить его.

© 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/modules/read_csv_module.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API