O GNU grep suporta uma opção -o
que lhe dará o padrão correspondente, então você pode usar grep -o '([0-9]\+)'
, mas isso também imprimirá os parênteses. Para mais flexibilidade e portabilidade, no entanto, você deve pós-processar com sed
:
grep '([0-9]\+)$' movie.txt | sed 's/.*(\([0-9]\+\))$//'
# assumes that the year is always at the end of the line.