imprime todos os valores de um arquivo depois de remover alguns caracteres usando grep

1

Eu tenho um arquivo no qual os valores são armazenados como abaixo.

Assistant Professor at SASTRA University
St John's memorial college
Paul George Univeristy
Department Chair at University of Texas

Estou extraindo todos os caracteres após o primeiro em usando o comando abaixo.

grep -o ' at .*$' checkin.txt | cut -c5-

Agora, estou tentando obter a saída como

SASTRA University
St John's memorial college
Paul George University
University of Texas

Este é o script que eu tenho.

while read -r line; do
echo $line
done < <( grep -o ' at .*$' checkin.txt | cut -c5- )

No entanto, o script me fornece a saída abaixo.

SASTRA University
University of Texas

Como posso extrair todos os valores?

    
por Ramesh 11.02.2014 / 00:31

1 resposta

3

O problema aqui é que nem todas as linhas têm at . Tente isso:

$ sed 's/.* at //'  file 
SASTRA University
St John's memorial college
Paul George Univeristy
University of Texas

Se você pode ter o mutiple at s, use o Perl:

$ perl -pe 's/.+? at //' file 
    
por 11.02.2014 / 01:00