Experimente grep -e "^[^;]*spam[^;]*;"
eu tenho um arquivo csv que eu preciso filtrar e-mails marcados com a palavra 'spam' linhas parecem com isso
email;text;somestatus;mailserver status response; response message
[email protected];mx.mail.com;2;connection reset; try later
[email protected];somemx.record.com;3;spam message response; connection reset
[email protected];spammxrecord.com;5;Deferred: lsjdflsdj; try later
[email protected];mx-too.de., dsn=4.0.0, stat=Deferred: Connection reset by mx-too.de.;4;Deferred: Connection reset by mx-too.de.
as linhas 3 e 5 devem corresponder
o padrão deve corresponder se na primeira parte do csv (os caracteres até o primeiro ';') contém a palavra 'spam' ele não deve corresponder se a palavra estiver dentro das outras colunas do csv
eu tentei com
grep -e "spam[^;]*;\([^;]*;\)\{3\}"
alguém conhece a solução? thx