2 abordagens
-
mantenha tudo no último espaço:
sed 's/\(.*\) .*//'
-
encontre um espaço e alguns não espaços no final da linha e remova-os
sed 's/ [^ ]*$//'
Eu tenho uma pergunta sobre o comando sed
. É possível remover um caractere (ou conjunto de caracteres) entre um espaço vazio e um caractere escolhido? Se eu tiver uma lista contendo várias linhas de texto, como:
a = 5 * x + 3 n\exit>
a = 5 * x + 7 abndc\exit>
... etc etc
para obter
a = 5 * x + 3
a = 5 * x + 7
etc.
usando o comando sed
?
Então, basicamente, remova tudo do espaço depois de 3
para >
sed -r 's/(.*)( \S+>)//' file
a = 5 * x + 3
a = 5 * x + 7
Tags text-processing sed