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

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

Re: [shell-script] comparar campos em linhas e deletar as diferentes


From: Fabinho
Subject: Re: [shell-script] comparar campos em linhas e deletar as diferentes
Date: Sun, 24 Jun 2012 00:51:35 -0300

Davi, eu tinha testado com o script que eu tinha feito aqui com o modelo de
arquivos que você  tinha dado, e funcinou certinho sem mudar nada.
O comando sed que eu coloquei remove números de 0 a 9 e ''," funciona mais
seria mais um quebra galho tem um jeito mais idela de fazer isso..
Você tentou executar do jeito que eu te passei?
e deu algum problema?


Em 20 de junho de 2012 16:17, Davi Lima <address@hidden> escreveu:

> **
>
>
> * Fabinho (address@hidden) wrote:
> > Davi lima , voc? pode primeiramente remover do arquivo 1 os n?meros e
>
> > virgulas, e em seguida comparar com o comando grep para verificar se o
> nome
> > sem o numero contem no segundo arquivo.
> >
> > #Aqui vai um exemplo funcionando
> > #Obs: eu n?o conhe?o muito de sed, deve ter um jeito melhor de fazer isso
> > com express?o regular
>
> > #para usar so colocar o nomedoscript arquivo1 arquivo2
> > ###################################
> > #!/bin/sh
> > ## script arq1 arq2
> >
> > ARQ1=$1
> > ARQ2=$2
> >
> > temp=tmp.arq
> > resultado=Resultado.txt
> >
> > rm $temp &> /dev/null
> > rm $resultado &> /dev/null
> >
> > # Remove numero dos nomes e elimina linhas em branco e virgulas
> > sed
> >
> 's/\,//g;s/0//g;s/1//g;s/2//g;s/3//g;s/4//g;s/5//g;s/6//g;s/7//g;s/8//g;s/9//g;/^$/d'
> > $ARQ1 > $temp
> >
> > cat $temp | while read line
> > do
> > grep "$line" $ARQ2 | tee -a $resultado
> > done
> >
> > rm $temp &> /dev/null
> > ################################################
> >
> >
> > Em 20 de junho de 2012 10:52, Emerson Domingues Souto - H2M <
> > address@hidden> escreveu:
> >
> > > **
> > >
> > >
> > > Nesse caso n?o seria -f ? Por?m teria que ter alguma forma de
> desprezar o
>
> > > ?ltimo campo de cada linha do arquivo1 (150,00 300,00 34,00 ....)
> > >
> > > grep -f arquivo1 arquivo2 > arquivo3
> > >
> > > Emerson Domingues Souto
> > >
> > > Tecnologia da Informa??o
> > >
> > > Mar?tima Seguros S/A
>
> > >
> > > Fone: 11 3156-1017
> > >
> > > De: address@hidden [mailto:
> > > address@hidden] Em nome de sh3ll script
> > > Enviada em: quarta-feira, 20 de junho de 2012 10:17
> > > Para: address@hidden
> > > Assunto: Re: [shell-script] comparar campos em linhas e deletar as
> > > diferentes
> > >
> > >
> > > Pensei assim
> > >
> > > $ grep -v "$(arquivo2)" arquivo1 > arquivo3
> > >
> > > Em 20 de junho de 2012 10:10, Petterson Faria <
> > > address@hidden <mailto:contato%40pettersonfaria.com.br>
> > > > escreveu:
> > >
> > > > poderia fazer um while read no arquivo1 e usar o sed /^nome/D no
> arquivo
> > > 2
> > > >
> > > > --
> > > > Atenciosamente,
> > > > *Petterson Faria*
> > > >
> > > > *"A ci?ncia nunca resolve um problema sem criar mais dez" *(George
>
> > > Bernard
> > > > Shaw)
> > > > *"It is a capital mistake to theorize before you have all the
> evidence.
> > > It
> > > > biases the judgment"* (Sherlock Holmes)
> > > >
> > > >
> > > >
> > > >
> > > > 2012/6/20 Davi Lima <address@hidden <mailto:
> > > davimarc%40terra.com.br> >
> > >
> > > >
> > > > > **
> > > > >
> > > > >
> > > > > Ol? colegas,
> > > > > Sou novo na lista e em shell script, e preciso da ajuda de voc?s.
>
> > > > > ? o seguinte:
> > > > > Tenho dois arquivos mais ou menos assim
> > > > >
> > > > > arquivo1
> > > > > Fulano da Silva 150,00
> > > > > Sicrano Vieira 300,00
> > > > > Silano Engano Olavo 34,00
> > > > >
> > > > > arquivo2
> > > > > Maria Nao sei das Quantas;address@hidden <mailto:
> > > marianaosei%40email.com.br>
> > > > > Fulano da Silva;address@hidden <mailto:
> > > fulanodasilva%40email.com.br>
> > > > > Euclano Disbravo;address@hidden <mailto:
> > > euclanodisbravo%40email.com.br>
> > > > > Sicrano Vieira;address@hidden <mailto:
> > > sicranovieira%40email.com.br>
> > > > > Silano Engano Olavo;address@hidden <mailto:
> > > silanoengano%40email.com>
> > > > >
> > > > > Eu queria comparar os nomes dos arquivos linha a linha e apagar as
> > > linhas
> > > > > do arquivo2
> > > > > cujo os nomes n?o aparecem no arquivo1.
> > > > >
> > > > > Abra?os
> > > > > =================================
> > > > > Davi Lima
> > > > > An?polis - GO
> > > > >
> > > > >
> > > >
> > > >
> > > > [As partes desta mensagem que n?o continham texto foram removidas]
> > > >
> > > >
> > > >
> > > > ------------------------------------
> > > >
> > > > ----------------------------------------------------------
> > > > Esta lista n?o admite a abordagem de outras liguagens de programa??o,
> > > como
> > > > perl, C etc. Quem insistir em n?o seguir esta regra ser? moderado sem
> > > > pr?vio aviso.
>
> > > > ----------------------------------------------------------
> > > > Sair da lista: address@hidden <mailto:
> > > shell-script-unsubscribe%40yahoogrupos.com.br>
> > > > ----------------------------------------------------------
> > > > Esta lista ? moderada de acordo com o previsto em
> > > > http://www.listas-discussao.cjb.net
> > > > ----------------------------------------------------------
> > > > Servidor Newsgroup da lista: news.gmane.org
> > > > Grupo: gmane.org.user-groups.programming.shell.brazil
> > > >
> > > > Links do Yahoo! Grupos
> > > >
> > > >
> > > >
> > >
> > > [As partes desta mensagem que n?o continham texto foram removidas]
> > >
> > > [As partes desta mensagem que n?o continham texto foram removidas]
> > >
> > >
> > >
> >
> >
> >
> > --
> > Att,
> > F?bio Duarte de Oliveira
> > UFPR - (041) 9825-9658
> >
> >
> > [As partes desta mensagem que n?o continham texto foram removidas]
> >
> >
> >
> > ------------------------------------
> >
> > ----------------------------------------------------------
> > Esta lista n?o admite a abordagem de outras liguagens de programa??o,
> como perl, C etc. Quem insistir em n?o seguir esta regra ser? moderado sem
> pr?vio aviso.
>
> > ----------------------------------------------------------
> > Sair da lista: address@hidden
> > ----------------------------------------------------------
> > Esta lista ? moderada de acordo com o previsto em
> http://www.listas-discussao.cjb.net
> > ----------------------------------------------------------
> > Servidor Newsgroup da lista: news.gmane.org
> > Grupo: gmane.org.user-groups.programming.shell.brazil
> >
> > Links do Yahoo! Grupos
> >
> >
> >
>
> Olá Fabinho,
> Eu testei aqui mudando o comando sed pelo comando cut -f1, já que o
> delimitador entre
> o nome e o número é um TAB. Funcionou em parte, uma vez que ele copiou o
> arquivo2 com
> as linhas excluídas mas no final ele copia o arquivo2 completo.
>
>
> =================================
> Davi Lima
> Anápolis - GO
>
>  
>



-- 
Att,
Fábio Duarte de Oliveira
UFPR -  (041) 9825-9658


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



reply via email to

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