shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] Tratar texto.


From: Edmilson Menezes
Subject: Re: [shell-script] Tratar texto.
Date: Wed, 5 Nov 2008 07:53:42 -0800 (PST)

Opa, a saida ficaria assim:
 
mestre01 SERVIDOR #5508308AAAAAAABH CAMPO1 CAMPO2 CAMPO3
mestre01 SERVIDOR NOME01 ERRO        CAMPO1 CAMPO2 CAMPO3
mestre01 SERVIDOR NOME02 ERRO        00 CAMPO1 CAMPO2 CAMPO3
mestre01 SERVIDOR01 #QUALQUER        CAMPO1 CAMPO2 CAMPO3
mestre01 SERVIDOR01 >>ESTADO run NOME1 ERRO 00 CAMPO1 CAMPO2 CAMPO3
mestre02 SERVIDOR13 #COISA CAMPO1 CAMPO2 CAMPO3
mestre02 SERVIDOR13 >>ESTADO run NOME1 ERRO 00 CAMPO1 CAMPO2 CAMPO3
mestre02 SERVIDOR37 #QUALQUER CAMPO1 CAMPO2 CAMPO3
mestre02 SERVIDOR37 >>ESTADO run NOME9 ERRO CAMPO1 CAMPO2 CAMPO3
mestre02 SERVIDOR41 #5508308AAAAAAABF CAMPO1 CAMPO2 CAMPO3
mestre02 SERVIDOR41 NOME7 ERRO       CAMPO1 CAMPO2 CAMPO3
 
O nome do servidor nem sempre é igual por isso não posso tratar pelo nome e sim 
por campo. Mais uma vez obrigado.

--- Em qua, 5/11/08, André Saunite <address@hidden> escreveu:

De: André Saunite <address@hidden>
Assunto: Re: [shell-script] Tratar texto.
Para: address@hidden
Data: Quarta-feira, 5 de Novembro de 2008, 10:33






Oi,

Não entendi se é exatamente isso o que você quer, mas acredito que dá
pra usar esses comandos para pelo menos ter uma idéia de um modo de
realizar sua tarefa:

$ awk /SERVIDOR/'{ print $2; getline ; print $2}' arquivo.txt
SERVIDOR
NOME01
SERVIDOR01
>>ESTADO
SERVIDOR13
>>ESTADO
SERVIDOR37
>>ESTADO
SERVIDOR41
NOME7

$ awk /SERVIDOR/'{ print $2; getline ; print $0}' a
SERVIDOR
mestre01 NOME01 ERRO CAMPO1 CAMPO2 CAMPO3
SERVIDOR01
mestre01 >>ESTADO run NOME1 ERRO 00 CAMPO1 CAMPO2 CAMPO3
SERVIDOR13
mestre02 >>ESTADO run NOME1 ERRO 00 CAMPO1 CAMPO2 CAMPO3
SERVIDOR37
mestre02 >>ESTADO run NOME9 ERRO CAMPO1 CAMPO2 CAMPO3
SERVIDOR41
mestre02 NOME7 ERRO CAMPO1 CAMPO2 CAMPO3

Caso não seja isso o que você quer, por favor, mande um exemplo da
saída esperada.

Abs,
André Saunite

2008/11/5 Edmilson Menezes <erocha_jr@yahoo. com.br>
>
> Bom dia pessoal, tenho o seguinte texto:
>
> mestre01 SERVIDOR #5508308AAAAAAABH CAMPO1 CAMPO2 CAMPO3
> mestre01 NOME01 ERRO CAMPO1 CAMPO2 CAMPO3
> mestre01 NOME02 ERRO 00 CAMPO1 CAMPO2 CAMPO3
> mestre01 SERVIDOR01 #QUALQUER CAMPO1 CAMPO2 CAMPO3
> mestre01 >>ESTADO run NOME1 ERRO 00 CAMPO1 CAMPO2 CAMPO3
> mestre02 SERVIDOR13 #COISA CAMPO1 CAMPO2 CAMPO3
> mestre02 >>ESTADO run NOME1 ERRO 00 CAMPO1 CAMPO2 CAMPO3
> mestre02 SERVIDOR37 #QUALQUER CAMPO1 CAMPO2 CAMPO3
> mestre02 >>ESTADO run NOME9 ERRO CAMPO1 CAMPO2 CAMPO3
> mestre02 SERVIDOR41 #5508308AAAAAAABF CAMPO1 CAMPO2 CAMPO3
> mestre02 NOME7 ERRO CAMPO1 CAMPO2 CAMPO3
>
>
> Creio que o texto esta desconfigurado, por favor verifiquem aqui:
>
> http://pastebin. com/m6dc8f790 , acho que postei corretamente.
>
> Então, eu gostaria que o segundo campo do texto que contem o nome de um 
> servidor ficasse junto com o processo que o mesmo executa que é a linha que 
> esta abaixo, e assim por diante com os outros servidores, eu até consegui 
> colocar o nome do mesmo servidor para todas as linhas, mais preciso colocar o 
> servidor e seu processo os demais campos são diferentes e variam por linha, 
> algumas linhas estão com 9 campos e podem ir até 15 campos. Pessoal não 
> coloquei o que fiz porque não sei por onde começar sei até como ler campo a 
> campo mais fazer com que fique o servidor com o processo não. Obrigado.
>
>
> Novos endereços, o Yahoo! que você conhece. Crie um email novo com a sua cara 
> @ymail.com ou @rocketmail. com.
> http://br.new. mail.yahoo. com/addresses
>
> [As partes desta mensagem que não continham texto foram removidas]
>
> 
 














      Novos endereços, o Yahoo! que você conhece. Crie um email novo com a sua 
cara @ymail.com ou @rocketmail.com.
http://br.new.mail.yahoo.com/addresses

[As partes desta mensagem que não continham texto foram removidas]



reply via email to

[Prev in Thread] Current Thread [Next in Thread]