Анализ журнала облачного фронта aws

У меня есть сценарий оболочки, который анализирует журнал облачного фронта aws.

awk '{print $1","$2","$4","$5","$8","$9","(substr($11,1,7))","$12 }' access_log | grep cid= | sed -e 's/\/data//g;s/\/videos//g;s/\/images//g;s/\/hls//g;s/\/rss//g;s/\/xml//g;s/cid=//g' > stats.txt

Я пытаюсь объединить поля $1 и $2, чтобы отметка даты была похожа на этот формат: Date_time 0000-00-00 00:00:00

В настоящее время в двух полях дата, время 2012-12-23 20:59:47

Любая помощь приветствуется.

1 ответ

Решение

Часть вашего сценария awk добавляет запятую между частями даты и времени того, что вы хотите отформатировать как datetime. Это приводит к тому, что "ГГГГ-ММ-ДД ЧЧ: ММ: СС" отображается как "ГГГГ-ММ-ДД, ЧЧ: ММ: СС".

Чтобы получить результат, измените ваш скрипт на:

awk '{print $1" "$2","$4","$5","$8","$9","(substr($11,1,7))","$12 }' access_log | grep cid= | sed -e 's/\/data//g;s/\/videos//g;s/\/images//g;s/\/hls//g;s/\/rss//g;s/\/xml//g;s/cid=//g' > stats.txt

Это должно правильно вставить в поле datetime.

Другие вопросы по тегам