Aqui:
grep -o '[^,]\+$'
-
[^,]\+
corresponde a um ou mais caracteres que não são,
no final da linha ($
) -
-o
imprime apenas a parte correspondente
Exemplo:
% grep -o '[^,]\+$' <<<'Blah,3,33,56,5,Foo 30,,,,,,,3,Great Value'
Great Value
Estou tentando pegar a última palavra ou frase usando grep para um padrão específico. Neste exemplo, seria a partir da última vírgula até o final da linha:
Blah,3,33,56,5,Foo 30,,,,,,,3,Great Value
E assim a saída desejada para essa linha seria "Great Value". Todas as linhas têm tamanhos diferentes, mas sempre tem uma única vírgula antes das últimas palavras.
Basicamente, gostaria de simplesmente sair da última vírgula até o final da linha. Obrigada!
Sempre gostei de ver uma solução awk
, então aqui está (a melhor solução!):
% awk -F, '{print $NF}' <<<'Blah,3,33,56,5,Foo 30,,,,,,,3,Great Value'
Great Value
Tags command-line grep