[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] Dúvida besta porem persistente
From: |
jimmy |
Subject: |
Re: [shell-script] Dúvida besta porem persistente |
Date: |
Tue, 30 Sep 2008 10:23:30 -0300 |
User-agent: |
Mutt/1.4.2.3i |
se o arquivo "lista" existe use ele como argumento
muda o conteúdo do mycat para:
#!/bin/ksh
cat $(<$1)
e testa com:
./mycat lista
On Tue, Sep 30, 2008 at 09:57:33AM -0300, Breno Moiana wrote:
> Achei as soluções apresentadas aqui muito interessantes, e fui usar.
> Cheguei a uma dúvida bem simples até: com cat esse tipo de
> concatenação direta funciona. Mas em termos de mecânica de script, não
> substitui um loop. Temos um atalho para loop que nao seja o uso do for
> com toda a sua sintaxe? (Administrador bom é administrador preguiçoso,
> não é isso, Julio? ;)
>
> Já explico:
>
> arquivos:
> -rwxr-xr-x 1 evrbatch sapbatch 17 Sep 30 07:45 mycat.sh
> -rw-r--r-- 1 evrbatch sapbatch 53 Sep 30 07:49 um
> -rw-r--r-- 1 evrbatch sapbatch 54 Sep 30 07:49 dois
> -rw-r--r-- 1 evrbatch sapbatch 48 Sep 30 07:49 tres
> -rw-r--r-- 1 evrbatch sapbatch 13 Sep 30 07:44 lista
>
> Conteudo do mycat.sh:
> #/bin/ksh
> cat $1
>
> Agora... vejam só
>
> $ cat lista
> um
> dois
> tres
>
> $ cat $(<lista)
> um
> umaumaumaumumu mum aumaum uamua maumamuau maumuam
> dois
> doisodisodisodi sodisoidosidos dosidosiodisodi s
> tres
> trstsrter strestersteserstrestrestrtesrets
>
>
> Até aí, tudo bem. Porém, se uso meu script, ele só pega o primeiro:
>
> $ ./mycat.sh $(<lista)
> um
> umaumaumaumumu mum aumaum uamua maumamuau maumuam
>
> Eu acredito que isso seja porque o cat me permite passar vários
> arquivos como parâmetro, enquanto meu script só usa o $1.
>
> Trocando no script o $1 por $*:
>
> $ ./mycat.sh $(<lista)
> um
> umaumaumaumumu mum aumaum uamua maumamuau maumuam
> dois
> doisodisodisodi sodisoidosidos dosidosiodisodi s
> tres
> trstsrter strestersteserstrestrestrtesrets
>
> Mas e se eu nao quiser/puder mudar o script, ou se for um comando que
> só suporta um parametro por vez? Temos outras opções ao invés do loop?
>
> $ for parm in $(cat lista); do ./mycat.sh $parm;done
> um
> umaumaumaumumu mum aumaum uamua maumamuau maumuam
> dois
> doisodisodisodi sodisoidosidos dosidosiodisodi s
> tres
> trstsrter strestersteserstrestrestrtesrets
>
> Abraço!
>
> Breno.
> --
>
>
>
>
> 2008/9/26 Julio C. Neves <address@hidden>:
> > Fala Fabiano,
> > Cara, adorei a sua resposta. Muito inteligente!!!!
> > --
> > Abraços,
> > Julio
> > *Em setembro estarei dando um treinamento
> > Shell em São Paulo (em 2 fins de semana).
> > Mais informações: www.4linux.com.br
> > Tel: (11) 2125-4747
> > *
> > 2008/9/26 Fabiano Caixeta Duarte <address@hidden>
> >
> >> 2008/9/26 André Saunite <address@hidden <saunite%40gmail.com>>
> >
> >>
> >>
> >> > Olá,
> >> >
> >> > Já tentou assim?
> >> >
> >> > cat $(cat lista.txt)
> >> >
> >> > Abs,
> >> > André Saunite
> >> >
> >> > 2008/9/26 allan_hkrs <address@hidden<allan_hkrs%40yahoo.com.br>
> >> >:
> >> > > Estou com uma duvida besta, porem nao arranjo solução para a mesma,
> >> > > ja pesquisei e nao achei nada relacionado, alguem sabe como posso
> >> > > passar uma valor de um txt ou de um pipe direto para uma linha de
> >> > > comando? Vou dar um exemplo do que estou querendo fazer. Supondo que
> >> > > eu tenha um arquivo lista.txt com o conteudo:
> >> > >
> >> > > juliosoares.txt
> >> > > robertosoares.txt
> >> > > carlosdesouza.txt
> >> > > alvaro.txt
> >> > > augustosoares.txt
> >> > >
> >> > > digamos que eu queira fazer um cat nos arquivos nessa ordem.. Como eu
> >> > > posso "passar" o valor para a linha de comando sem digitar linha por
> >> > > linha? Por exemplo:
> >> > >
> >> > > cat juliosoares.txt robertosoares.txt augustosoares.txt
> >> > >
> >> > > Ao inves de digitar 1 por 1, faria um grep e passaria o valor da
> >> > > saida padrao para a linha de comando, sem opções de cada programa, de
> >> > > forma generalizada, entenderam? Quem puder ajudar...
> >> > >
> >> > > Allan
> >> >
> >>
> >> A mesma solução, mas com uma pequena variação ;)
> >>
> >> cat $(<lista.txt)
> >>
> >> --
> >> Fabiano Caixeta Duarte
> >> Especialista em Redes de Computadores
> >> Linux User #195299
> >> Ribeirão Preto - SP
> >>
> >> [As partes desta mensagem que não continham texto foram removidas]
> >>
> >>
> >>
> >
> > --
> > Abraços,
> > Julio
> > Em setembro estarei dando um treinamento
> > Shell em São Paulo (em 2 fins de semana).
> > Mais informações: www.4linux.com.br
> > Tel: (11) 2125-4747
> >
> > [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
>
_______________________________________________________________________________
- Re: [shell-script] Script com Funcao, (continued)
- Re: [shell-script] Script com Funcao, Julio C. Neves, 2008/09/26
- Duvida If....., Redes - Hábil Tecnologia, 2008/09/27
- Re: [shell-script] Duvida If....., César Vianna, 2008/09/27
- Re: [shell-script] Duvida If....., André Saunite, 2008/09/27
- Re: [shell-script] Duvida If....., Paulo Silvestre Schmitt, 2008/09/27
- Re: [shell-script] Dúvida besta porem persistente, Julio C. Neves, 2008/09/26
- Re: [shell-script] Dúvida besta porem persistente, Breno Moiana, 2008/09/30
- Re: [shell-script] Dúvida besta porem persistente,
jimmy <=
- Re: [shell-script] Dúvida besta porem persistente, Breno Moiana, 2008/09/30
- Re: [shell-script] Dúvida besta porem persistente, Flavio Junior, 2008/09/30
- Re: [shell-script] Dúvida besta porem persistente, Breno Moiana, 2008/09/30
- Re: [shell-script] Dúvida besta porem persistente, jimmy, 2008/09/30