[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Melhorar o case
From: |
Rafael de Melo Rossi |
Subject: |
Melhorar o case |
Date: |
Wed, 12 Jul 2006 10:38:07 -0300 |
Oi Pessoal,
Aonde trabalho desenvolvi um script que verifica em um diretório se um
arquivo está lá ou não.
Ele funciona só que ele não está bem escrito, seguinte:
Todos os dias eu recebo alguns arquivos padronizados, a diferenciação
entre eles é o codigo do parceiro, o sequencial, data e hora.
Ex: C201J.M901.R0010.D06071.H15:00.cnm
Sendo: M901 - Codigo do Parceiro, R0010: Sequencial do
Arquivo , Data: D060711, Hora: H15:00
Então criei um lista com todos os parceiros e fiz um case ENORME para
englobar todos, sendo que o codigo de todos é identico:
"XYZ" )
if ls ./arq/*$reg*$Data*.com >> ./dat/$reg.dat 2>&1 #envia o
resultado do ls para um arquivo dat
then echo Arquivo "Encontrado com sucesso: " >> ./log/ABN.log
#cria um log informando se encontrou o arquivo
tail -1 ./dat/$reg.dat >> ./log/ABN.log #insere o nome do
arquivo no log
fi
;;
Como disse, não existe erros. São não achei esse código elegante.
Aí vão as perguntas: Achei a idéia da lista um boa idéia, mas alguem
tem uma outra alternativa??
Realmente eu preciso usar o "case"??
Tem como eu inserir o camando "tail"
diretamente no "echo"? Até porque são inseridas duas linhas a cada vez que esse
script é gerado.
Agradeço a atenção de todos....
Rafael
Rafael de Melo Rossi
address@hidden
Tel: (21) 9608-6148
msn: address@hidden
icq: 155117468
----- Mensagem Original -----
De: mendezdba <address@hidden>
Para: address@hidden
Data: Quarta, 12 De Julho De 2006 09:37
Assunto: [shell-script] Re: ajuda com script
> Amigos, obrigado pela ajuda..
>
> Agora fui criar o script e estou errando em alguma coisa
>
> Foi criado o seguinte script.
>
> #!/bin/csh
> set data = `date`
> set auditlog = script_audit.log
> set auditold = script_audit_antigo.log
> cp -p $auditlog $auditold
> mv $auditold $auditold.`date "+%y%m%d%H%M"`
> find / -perm 0750 | xargs egrep -l '#!/bin/(csh|bash|ksh|sh)' >
> script_audit.txt
>
> Quando eu executo esta gerando a seguinte msg......
>
> /bin/(csh|bash|ksh|sh)': Event not found.
>
> Pergunta aonde esta o erro...?
>
> Obrigado
>
> Samuel
>
> --- Em address@hidden, "+[+ Suicide|Solution +]+"
> <suicide.solution@g...> escreveu
> >
> > Testei isso aqui:
> > ls -la `find / -type f -perm 0750 | xargs egrep -l '^#!/bin/
> (csh|bash)'` |
> > awk '{print$1 $9}' > /tmp/perm_750.txt
> >
> > On 7/11/06, Flavio Junior <billpp@g...> wrote:
> > >
> > > Curioso eh curioso neh.. acabei testando e corrigindo os erros:
> > > tae a versão v2.0
> > >
> > > $ find / -type f -perm 0750 -exec sh -c 'head {} | egrep -q
> > > "#!/bin/bash|#!/bin/csh" && echo "{}" >> /tmp/logscript.txt' \;
> > >
> > >
> > > Flavio do carmo Junior aka blk1d
> > >
> > > On 7/11/06, Flavio Junior <billpp@g...> wrote:
> > > > $ find / -perm 0750 -exec head {} |
> egrep '#!/bin/bash|#!/bin/csh" &&
> > > > echo "{}" >> /tmp/logscript.txt \;
> > > >
> > > > $ cat /tmp/logscript.txt
> > > >
> > > > (cada $ é um comando, ou seja, uma linha.)
> > > > Isso parace funcionar, nem testei pra dizer a verdade... o
> comando
> > > > acima vai jogar todos os arquivso que tiverem em suas 10
> primeiras
> > > > ilnhas a string "#!/bin/bash ou #!/bin/csh" e jogar no arquivo
> > > > /tmp/logscript.txt
> > > >
> > > > ps: as 10 primeiras linhas pq tem gente que nao segue o padrao
> e bota
> > > > os comentarios antes do #! ...
> > > >
> > > > Boa sorte,
> > > >
> > > > Flavio do Carmo Junior aka blk1d
> > > >
> > > > On 7/11/06, mendezdba <smsbasis@h...> wrote:
> > > > > Amigos preciso de um script , mais nao tenho ideia de como
> fazer..
> > > > >
> > > > > Tenho que procurar em toda maquina os script com permissao
> 750
> > > > > que sao "#!/bin/csh ou #!/bin/bash", e que gere uma lista
> > > > > das permissoes destes arquivos em forma arquivo *.txt...?
> > > > >
> > > > > Por favor alguem poderia me ajudar .
> > > > >
> > > > > Obrigado
> > > > >
> > > > > Samuel
> > > > >
> > > > >
> > > > >
> > > > >
> > > > >
> > > > >
> > > > >
> > > > > -------------------------------------------------------------
> --------
> > > > > 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
> > > > >
> > > > >
> > > > >
> > > > >
> > > > >
> > > > >
> > > > >
> > > > >
> > > > >
> > > >
> > >
> > >
> >
> >
> >
> > --
> > ++++++++++++++++++++++++++++
> > + Felipe Nogaroto Gonzalez \m/ +
> > + aka Suicide|Solution> +
> > + Slackware Linux :^) +
> > + http://suicide.bunghole.com.br +
> > ++++++++++++++++++++++++++++
> >
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
>
>
>
>
>
>
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- Melhorar o case,
Rafael de Melo Rossi <=