Com cut
:
cut -d: -f1 file
Com sed
:
sed -e 's/:.*//' file
Com awk
:
awk -F: '{print $1}' file
Com GNU grep
ou muitos BSD grep
s (mas não POSIX grep
):
grep -o '^[^:]*' file
cut
é o mais curto.
Se você quiser modificar o arquivo in-loco, seu sed
pode ter uma opção -i
que faz isso - mas como isso funciona depende da sua plataforma. Caso contrário, > file2 && mv file2 file
no final de qualquer um deles funcionará.
Como alternativa, com ed
, no local em todos os locais:
printf ',s/:.*/\nw\n' | ed file