Как написать строки Regex Multi? - PullRequest
0 голосов
/ 06 ноября 2019

Я пытаюсь найти решение самостоятельно, но это 2 дня, которые я пытаюсь окончательно сдаться: (

У меня есть несколько файлов журнала со строкой, как показано ниже, и мне нужно извлечь datetime, ошибка редактораи MD5 и вставьте их в файл следующим образом: Datetime; ошибка редактора; MD5

На самом деле я использую следующие команды, но это не достаточно, некоторые данные отсутствуют, потому что мое регулярное выражение не принимает возврат колесницы ...

Команды:

grep -oPh '201[8-9]-[0-1][0-9]-[0-3][0-9]T[0-9][0-9]:[0-9][0-9].*[a-f0-9]{32}' all_merged_draft > date_editor_md5_draft && 
grep -oPh '^201[8-9]-[0-1][0-9]-[0-3][0-9]T[0-9][0-9]:[0-9][0-9]' date_editor_md5_draft > date_draft && 
grep -oPh '[a-f0-9]{32}$' date_editor_md5_draft > md5_draft && 
grep -oPh '";".*";"' date_editor_md5_draft > editor_draft && 
sed -ir '{s/^";"//;s/";"$//g}' editor_draft && 
sed -ir 's/T/ /' date_draft && 
paste -d ';' date_draft editor_draft md5_draft > date_editor_md5_final

Пример моих журналов:

"2019-04-19T00:01:55+02:00";"error webservice website.com";"array (
  0 => 'd41d8cd98f00b204e9800998ecf8478e',
  1 => '',
  2 => '',
  3 => '',
  4 => '',
  5 => '',
)"
"2019-04-19T00:02:05+02:00";"error webservice website2.com";" => 12150078c123cb2c496bda549c64b129"
"2019-04-19T00:02:23+02:00";"error webservice website3.com";"178c59ab048e885d8f0e2992f4471b43 => NOMATCH"
"2019-04-19T00:02:53+02:00";"error webservice website5.com";"array (
  0 => 'd41d8cd98f00b204e9800998ecf8787e',
  1 => '',
  2 => '',
  3 => '',
  4 => '',
  5 => '',
)"
"2019-04-19T03:03:04+02:00";"websitexxx.com webservice Hash nomatch";" => 12150052c847cb2c496bda549c64b129"
"2019-04-19T03:03:22+02:00";"  error";"233c59dc048e885d8f0e2992f4471b43 => NOMATCH"
"2019-04-19T03:05:00+02:00";"website8.com webservice error";"Response = array (
  0 => '',
) for hash = a38267ce82b711165d3979fe0ed16ba6"

Мне нужен синтаксический анализ нескольких строк ...

Наконец, мой файлдолжно быть так:

2019-04-19 00:01:55;error webservice website.com;d41d8cd98f00b204e9800998ecf8478e

2019-04-19 00:02:05;error webservice website2.com;12150078c123cb2c496bda549c64b129

2019-04-19 00:02:23;error webservice website3.com;178c59ab048e885d8f0e2992f4471b43

2019-04-19 00:02:53;error webservice website5.com;d41d8cd98f00b204e9800998ecf8787e

2019-04-19 03:03:04;websitexxx.com webservice Hash nomatch;12150052c847cb2c496bda549c64b129

2019-04-19 03:03:22;website8.com webservice error;a38267ce82b711165d3979fe0ed16ba6
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...