Pular para o conteúdo

Apagar trecho de linha

Responder tópico
  • Denunciar
  • Indicar

1. Apagar trecho de linha

Enviado em 10/02/2015 - 19:21h

Olá Pessoal,

Tenho um arquivo txt formatado da seguinte forma:

33415218;22548;151511747188887 |BRUNO|ESTUDANTE|PARAIBA|000000000000000
33415218;22548;151511747188887 |BRUNO|ESTUDANTE|PARAIBA|000000000000000
33415218;22548;151511747188887 |BRUNO|ESTUDANTE|PARAIBA|000000000000000

Gostaria de excluir toda a informação a partir do primeiro pipe. Como faço?
tentei algumas combinações com grep, sed, mas não obtive o resultado esperado.
Gostaria de uma saida dessa maneira:

33415218;22548;151511747188887
33415218;22548;151511747188887
33415218;22548;151511747188887


[]'s



Responder tópico

2. Re: Apagar trecho de linha

Enviado em 10/02/2015 - 19:42h

Veja se este funciona:

sed 's/^\(.*\)\ |.*0$/\1/g' <arquivo.txt>
Se funcionar, passe o parâmetro de inserção -i. E.g:
sed -i 's/^\(.*\)\ |.*0$/\1/g' <arquivo.txt> 

3. Re: Apagar trecho de linha

Enviado em 10/02/2015 - 19:55h

brenolacerda escreveu:

Olá Pessoal,

Tenho um arquivo txt formatado da seguinte forma:

33415218;22548;151511747188887 |BRUNO|ESTUDANTE|PARAIBA|000000000000000
33415218;22548;151511747188887 |BRUNO|ESTUDANTE|PARAIBA|000000000000000
33415218;22548;151511747188887 |BRUNO|ESTUDANTE|PARAIBA|000000000000000

Gostaria de excluir toda a informação a partir do primeiro pipe. Como faço?
tentei algumas combinações com grep, sed, mas não obtive o resultado esperado.
Gostaria de uma saida dessa maneira:

33415218;22548;151511747188887
33415218;22548;151511747188887
33415218;22548;151511747188887


[]'s


Você consegue com cut, grep, sed, awk, shell-script puro ...

1. cut:

cut -d'|' -f1 arquivo.txt 
2. grep:

grep -o '^[^|]\+' arquivo.txt 
3. sed:

sed 's/|.*//' arquivo.txt 
4. awk:

awk -F'|' '{print $1}' arquivo.txt 
5. shell-script puro:

while IFS=$'|\n' read -a f; do echo ${f[0]}; done < arquivo.txt 
Você vai precisar adaptar caso queira remover os espaços que tem antes da primeira barra vertical.

Responder tópico

Responder tópico

Entre na sua conta para responder.

Fazer login para responder