Pular para o conteúdo

Remover caractere [RESOLVIDO]

Responder tópico
  • Denunciar
  • Indicar

1. Remover caractere [RESOLVIDO]

Enviado em 19/04/2017 - 00:13h

Boa noite,
tenho um arquivo de texto "arquivo.txt" que contém:
**************************************************************
attributes-charset
utf-8H
attributes-natural-language
pt-br
printer-uri
'ipp://localhost/printers/ImpressoraV_TIB
job-originating-user-name
henriqueB
job-originating-host-name
192.168.1.107B
job-name
+smbprn.00000071 Microsoft Word - teste.docxI
document-format-detected
application/postscriptI

**************************************************************
gostaria de copiar dele o trecho "henriqueB" sem o último caractere, neste caso "B". Lembrando que este trecho é dinamico, logo, pode ser "BrunaB, SabrinaB, AlexandreB...."


Muito obrigado

Responder tópico

2. Re: Remover caractere [RESOLVIDO]

Melhor resposta

Enviado em 19/04/2017 - 11:02h

henriquew escreveu:

Resolvido com o comando:

cat arquivo| sed -n '1 p' | rev | sed 's/^.//' | rev

sed -n '1 p' = busco a linha que preciso
rev = inverto a ordem inversa
sed 's/^.//' = removo o caractere da primeira posição
rev = inverto para a ordem correta
Ok. Acho que nem precisa do "rev" não, basta isso:
cat arquivo | sed -n '1 p' | sed 's/.$//'

$ = final da linha

3. Re: Remover caractere [RESOLVIDO]

Enviado em 19/04/2017 - 00:35h

Pode ser algo como

sed -r "s/^([[:alpha:]]+)B$/\1/g" arquivo.txt > novo_arquivo.txt

para criar novo arquivo ou

sed -r "s/^([[:alpha:]]+)B$/\1/g" arquivo.txt > novo_arquivo.txt

para alterar o arquivo.

Faça uns testes preliminares para ver se está ok, se não há algum caso onde falhe.

----------------------------------------------------------------------------------------------------------------
Nem direita, nem esquerda. Quando se trata de corrupção o Brasil é ambidestro.
(anônimo)

Encryption works. Properly implemented strong crypto systems are one of the few things that you can rely on. Unfortunately, endpoint security is so terrifically weak that NSA can frequently find ways around it. — Edward Snowden

4. Re: Remover caractere [RESOLVIDO]

Enviado em 19/04/2017 - 00:47h

listeiro_037 escreveu:

Pode ser algo como

sed -r "s/^([[:alpha:]]+)B$/\1/g" arquivo.txt > novo_arquivo.txt

para criar novo arquivo ou

sed -r "s/^([[:alpha:]]+)B$/\1/g" arquivo.txt > novo_arquivo.txt

para alterar o arquivo.

Faça uns testes preliminares para ver se está ok, se não há algum caso onde falhe.

----------------------------------------------------------------------------------------------------------------
Nem direita, nem esquerda. Quando se trata de corrupção o Brasil é ambidestro.
(anônimo)

Encryption works. Properly implemented strong crypto systems are one of the few things that you can rely on. Unfortunately, endpoint security is so terrifically weak that NSA can frequently find ways around it. — Edward Snowden
Não funcionou amigo :X


5. Re: Remover caractere [RESOLVIDO]

Enviado em 19/04/2017 - 00:51h

Mas qual foi o resultado?

----------------------------------------------------------------------------------------------------------------
Nem direita, nem esquerda. Quando se trata de corrupção o Brasil é ambidestro.
(anônimo)

Encryption works. Properly implemented strong crypto systems are one of the few things that you can rely on. Unfortunately, endpoint security is so terrifically weak that NSA can frequently find ways around it. — Edward Snowden

6. Re: Remover caractere

Enviado em 19/04/2017 - 10:02h

Veja se essa 'gambiarra' resolve:
sed -n '/[a-z]B$/p' arquivo.txt | sed 's/B$//' 

7. Re: Remover caractere [RESOLVIDO]

Enviado em 19/04/2017 - 10:45h

Resolvido com o comando:

cat arquivo| sed -n '1 p' | rev | sed 's/^.//' | rev

sed -n '1 p' = busco a linha que preciso
rev = inverto a ordem inversa
sed 's/^.//' = removo o caractere da primeira posição
rev = inverto para a ordem correta

Responder tópico

Responder tópico

Entre na sua conta para responder.

Fazer login para responder