|
From: | Julio C. Neves |
Subject: | Re: [shell-script] Re: Erro usando o laço for |
Date: | Tue, 28 Oct 2014 12:24:50 -0200 |
Olá Mestre Julio, a tua idéia de zerar a variável funcionou.
O teste se é arquivo também funciona, acho que nesse caso o loop
passa ao teste cada nome de arquivo encontrado, e o teste faz o teste
em um nome de cada vez. O loop inclusive passa o valor '*.ext' quando
não tem nenhum arquivo, daí que aparece a listagem com o asterisco.
Abraços Paulo Bettega
On 28-10-2014 10:57, 'Julio C. Neves' address@hidden [shell-script] wrote:
> Fala Paulo,
> acho que essa construção não deve funcionar pq o -f é um operador unário e se expandir para mais de
> um arquivo, deve voltar um código de erro. Eu faria assim:
>
> > index.html
> for x in $(echo *.{html,txt,pdf,doc,css} | sed -r 's/ \*\.(html|txt|pdf|doc|css)//g'); do
> echo "<a href="" $x </a> <br />" >> index.html
> echo "Arquivo $x listado."
> done
>
> PS: Não sei se essa é a melhor solução, pq não vi a solicitação de ajuda original.
>
> Abcs,
> Julio
> *@juliobash*
> *Próximos cursos de Shell*
> *Cidade LocalPeríodo*
> *Rio de JaneiroEDX <http://edx.srv.br/>10 a 14/11*
> *São Paulo 4Linux <http://www.4linux.com.br/cursos/programacao-em-shell-script>24 a 28/11*
> Dou treinamento de /Shell/ em qualquer cidade.
> Para mais detalhes, me mande um e-mail <mailto:address@hidden>.
>
>
> Em 28 de outubro de 2014 10:11, Paulo Bettega address@hidden
> <mailto:address@hidden> [shell-script] <address@hidden
> <mailto:address@hidden>> escreveu:
>
> Uma solução pode ser testar se for arquivo.
>
> for x in *.{html,txt,pdf,doc,css}; do
> [ -f "$x" ] && {
> echo "<a href="" $x </a> <br />" >> index.html
>
> echo "Arquivo $x listado."
> }
> done
>
> Mas já que tem o processamento extra do teste, pode ser
> também a idéia do Mr.Bits "for x in $(ls *.{html,txt,pdf,doc,css})"
>
> Bash e ksh listam o valor de x como *.html, *.txt, etc.
> Parece que o fato dos arquivos não existirem não deixa a variável
> nula, então o echo imprime o valor.
>
> Abraços Paulo Bettega
>
>
> On 28-10-2014 09:21, address@hidden <mailto:address@hidden> [shell-script] wrote:
> > Ola, Itamar
> >
> >
> > Sua sugestão também nao funcionou, veja a saída do teste que fiz:
> > <a href="" teste1 </a> <br />
> > <a href="" teste2 </a> <br />
> > <a href="" teste3 </a> <br />
> > <a href="" teste4 </a> <br />
> > <a href="" teste </a> <br />
> > <a href="" *.txt </a> <br />
> > <a href="" *.pdf </a> <br />
> > <a href="" *.doc </a> <br />
> > <a href="" *.css </a> <br />
> >
> > Como pode ver , as linhas onde aparece os asteriscos são arquivos que não existe na pasta, mesmo
> > assim o script pegou estas extensões do laço for e as listou.
> >
> >
> >
> ----------------------------------------------------------------------------------------------------
> > Enviado por: address@hidden <mailto:address@hidden>
> >
> ----------------------------------------------------------------------------------------------------
>
>
> ------------------------------------
>
> ------------------------------------
>
> ---------------------------------------------------------------------
> 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:address@hidden>
> ---------------------------------------------------------------------
> Esta lista é moderada de acordo com o previsto em http://www.listas-discussao.cjb.net
> ---------------------------------------------------------------------
> Servidor Newsgroup da lista: news.gmane.org <http://news.gmane.org>
> Grupo: gmane.org.user-groups.programming.shell.brazil
>
>
> ------------------------------------
>
> Links do Yahoo Grupos
>
>
>
>
> ----------------------------------------------------------------------------------------------------
> Enviado por: "Julio C. Neves" <address@hidden>
> ----------------------------------------------------------------------------------------------------
------------------------------------
------------------------------------
---------------------------------------------------------------------
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
<*> Para visitar o site do seu grupo na web, acesse:
http://br.groups.yahoo.com/group/shell-script/
<*> Para sair deste grupo, envie um e-mail para:
address@hidden
<*> O uso que você faz do Yahoo Grupos está sujeito aos:
https://info.yahoo.com/legal/br/yahoo/utos/terms/
[Prev in Thread] | Current Thread | [Next in Thread] |