castomi
@castomi
Серверный администратор - tickets.settin.ru

Как распарсить UserAgent в bash?

Хочу обработать логи получаемые от nginx и выжать из юзерагента информацию в несколько столбцов, а именно:
- Операционная система
- разрядность операционной системы
- Модель телефона
- Браузер
Юзерагенты имеют примерно одинаковое постороение, и наверное можно и самому написать логику по тому как его распарсить, но может эту логику написал кто-то до меня и поддерживает в актуальном состоянии? Кто сталкивался с такой задачей и как её решил. Буду признателен за любую информацию.
Всем спасибо за потраченное время.
  • Вопрос задан
  • 271 просмотр
Пригласить эксперта
Ответы на вопрос 1
Все эти данные есть в метрике, не понимаю смысла этого мероприятия.
Однако
для этого вам понадоблится
cat access.log | awk {'print $1 $17 $3'}
где $1 это первая колонка
$17 семнадцатя колонка и так далее, уж простите вашего формата лога не видел, по этому написал на угад.

Для подсчета количества элементов вам подойдет | wc -l
А так же для использования более сложных конструкций есть варианты с указанием конкретных разделителей и номера их в строке.
Так же есть куча анализаторов логов
https://habrahabr.ru/company/southbridge/blog/275667/
да и еще куча всякой хрени
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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