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: Wed, 20 Jun 2012 14:15:06 -0300

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]



reply via email to

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