У меня есть файл CSV, в котором содержатся URL-адреса, Полноценные доменные имена (FQDN), Домены, IP-адреса и диапазоны IP-адресов. И я хотел бы, чтобы преобразовать его в файл YAML следующий формат:Как преобразовать CSV-файл в файл YAML с помощью Ruby?
entity:
name: "company name"
network_names:
url:
- 'scheme://host:port/path?query'
- 'http://www.example.com/software/index.html'
fqdn:
- 'mymail.somecollege.edu'
domain:
- 'somecollege.edu'
network_addresses:
ipv4:
single_ip:
- 111.11.111.1
range:
- 111.11.111.0-111.11.11.255
Проблема заключается в том, что все смешалось в файл CSV, например, в первой строке есть IP-адрес, но на в следующей строке есть URL-адрес или полное доменное имя.
Так что я думал, что мне нужно проверить, содержит ли строка IP-адрес, URL-адрес, полное доменное имя или домен и из него создается файл YAML.
Но как указать поля для файла YAML? Я новичок в программировании Ruby и YAML.
Как выглядит ваш CSV? –
Размер CSV и сколько строк? Я бы написал свой собственный парсер, положил его в хэш, а затем использовал * Hash.to_yaml * – Roger
Как выглядит ваш код? С какой * конкретной * частью у вас есть проблема? Вы получили сообщение об ошибке? Который из? Получаете ли вы неправильные результаты? Какие результаты вы получите и какие результаты вы хотите? Пожалуйста, предоставьте нам [mcve]. –