Este é o sed básico. Usar sed não é difícil quando você conhece expressões regulares . Um comando básico sed
para ler a entrada e retirar cada <
e a seguinte parte, se existir, e depois imprimir a linha (pode ser modificada):
$ echo 'foo<....' | sed 's/<.*//'
foo
sed
usa expressões regulares , o texto da página de manual relevante para sed(1)
que se aplica ao comando acima:
Alternativa usando cut
( página de manual para cut(1)
), " divida a string por <
e pegue o campo 1
st.
echo 'foo<....' | cut -d'<' -f1
Alternativa usando grep
, "corresponde apenas a todos os caracteres contendo o conjunto a a z (sem distinção entre maiúsculas e minúsculas)" ( página de manual de grep(1)
):
echo 'foo<....' | grep -io '[a-z]*'
(nota: tomei a liberdade de usar [a-z]*
, significando "zero ou mais ocorrências de uma letra", porque o grep não retornará uma linha vazia ao usar a opção -o
)
Alternativa usando o awk, usando a mesma ideia de cut
( página de manual de awk(1)
):
echo 'foo<....' | awk -F '<' '{print $1}'