Проблема в том, что по умолчанию вам нужно экранировать свои |, чтобы получить правильное чередование. То есть, grep интерпретирует «foo | bar» как совпадающее только с литеральной строкой «foo | bar», тогда как шаблон «foo \ | bar» (с экранированным |) соответствует либо «foo», либо «bar».
Чтобы изменить это поведение, используйте флаг -E:
tail -f logFile | grep -vE 'string one|string two'
В качестве альтернативы используйте egrep, что эквивалентно grep -E:
tail -f logFile | egrep -v 'string one|string two'
Кроме того, -e является необязательным, если ваш шаблон не начинается с буквального дефиса. grep автоматически принимает первый не опциональный аргумент в качестве шаблона.