shell-script-pt
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [shell-script] Função Recursiva (Gerar discussão)


From: Salviano de Araujo Leão
Subject: Re: [shell-script] Função Recursiva (Gerar discussão)
Date: Thu, 25 Oct 2007 12:30:55 -0200
User-agent: KMail/1.9.6 (enterprise 0.20070907.709405)

A Thursday 25 October 2007 11:49:17, RAUL LONGHI escreveu:

Olá Raul

Valeu, mas o script foi usado como exemplo, e neste 
exemplo ele separa diretorios de arquivos regulares.

Os diretorios recebem um tipo de permissão e os
arquivos regulares outra.

A idéia e ver discutir um pouco as funções recursivas.

Vejamos por exemplo,

porque não manter $1?

Ao ser chamada pela segunda vez esta variável
não tem valor, porque abre uma nova instância
do shell, na qual esta variável não possui um valor.

Uma  variável local faz diferença? 

Bom o que eu tinha em mente era discutir
um pouco funções recursivas na lista, porque 
é mais rara sua documentação e exemplos de 
implementação.




> buenas,
>
> uma outra maneira seria vc utilizar a opção '-R' para recursividade.
>
> Ex. chmod 0765 local -R
>
> Saudações livres.
>
> Raul
>
> On 10/25/07, Salviano de Araujo Leão <address@hidden> wrote:
> >    Olá a todos
> >
> > Criei a função recursiva abaixo para mudar a
> > permissão de arquivos, no diretorio local e em todos
> > os abaixo.
> >
> > Colocada no .bashrc ela funciona corretamente e
> > posso chama-lá em qualquer instância do shell.
> >
> > Entretanto se crio um script, devo carregá-lo
> > inicialmente para usar a função.
> >
> > Permisao(){
> > local x CMD MOD
> > cd $PWD
> > MOD="$1"
> > for x in `'ls'`
> > do
> > if [ -f $x ]; then
> > chmod -c $MOD $x
> > elif [ -d $x ]; then
> > echo "Mudando a Permisao do diretorio $x"
> > chmod -c 0755 $x
> > cd $x
> > echo "Entrou no diretorio: $PWD"
> > Permisao $MOD
> > cd ..
> > fi
> > done
> > return
> > }
> >
> > Estou enviandoo script para gerar alguns cometários
> > a respeito de funções recursivas no shell.
>
> [As partes desta mensagem que não continham texto foram removidas]




reply via email to

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