преобразовать данные с разделителями табуляции в записи с разделителями и полями в двойных кавычках «» [закрыто]

В моей системе fail2ban фактически распределен по нескольким пакетам:

  • fail2ban
  • fail2ban-firewalld
  • fail2ban-systemd
  • fail2ban-sendmail
  • fail2ban-server
  • systemd-python

Очевидно, конфигурационные файлы не создаются, если не установлены некоторые или все вышеперечисленные. yum autoremove избавился от них, а затем yum install fail2ban восстановил исходные файлы конфигурации.

1
11.12.2018, 20:29
2 ответа

Вы можете использовать это:

sed 's/\t/","/g; s/.*/"&"/; s/""/ /g' file

s/""/ /gна самом деле не обязательно иметь правильный csv, но для достижения желаемого результата.

Если у вас естьcsvtool:

csvtool -t TAB -u ',' cat file

При этом будут указаны только те поля, где это необходимо.

1
27.01.2020, 23:42

Рядом нет компа, поэтому проверить не могу, но как насчет простого

Sed -r ‘s/^/“/;s/$/“/;s/\t/“,”/g;s/“”/ /g’

?
Я думаю, что вопрос неверен, хотя. Кавычки внутри оригинального tsv, скорее всего, запутают любой синтаксический анализатор, требующий их в конечном результате

0
27.01.2020, 23:42

Теги

Похожие вопросы