Я искал способ избежать буферизации на хвосте в той же ситуации, что и решение OP и Kobi отлично подходит для меня. В моем случае исключая строки с «ботом» или «пауком», включая «/» (для моего корневого документа).
Моя первоначальная команда:
tail -f mylogfile | grep --line-buffered -v 'bot\|spider' | grep ' / '
Теперь становится ( с переключателем per-p "-P"):
tail -f mylogfile | grep -P '^(?!.*(bot|spider)).*\s\/\s.*$'
Как писал Аллен, очевидно, почтальон вставлял заголовок языка по умолчанию, но по совпадению у нас была ошибка, которая неправильно интерпретировала этот заголовок. Исправление было развернуто в пятницу 18 января. Такое поведение не должно повториться.
Это похоже на переопределение региона для заголовка Accept-Language. Это должно быть отправлено как-то.
Проверьте консоль Почтальона; Вы можете увидеть, что заголовок accept-language отправляется. Вы также можете явно включить заголовок с другим значением (например, de
), чтобы увидеть, если вы получаете другое поведение.