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: Petterson Faria
Subject: Re: [shell-script] comparar campos em linhas e deletar as diferentes
Date: Sun, 24 Jun 2012 07:30:28 -0300

O bom e velho "bash -x" sempre ajuda nessas horas :)

--
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/24 Fabinho <address@hidden>

> 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]
>
>
>
> ------------------------------------
>
> ---------------------------------------------------------------------
> 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
>
>
>


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



reply via email to

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