Rápido e sujo:
echo foo | perl -nlE'print if $t ||= m{bar} }{ exit 1 if !$t'
Explicação:
O "Beijo Eskimo" ™ }{ fecha o loop while (que está implícito em -n ). Na declaração if , uma variante $t é 1 assim que a primeira correspondência acontece.