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

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

Re: [shell-script] Script para remoção de arquivos com exceção


From: Sergio Maia Rabelo
Subject: Re: [shell-script] Script para remoção de arquivos com exceção
Date: Tue, 6 Feb 2007 11:43:27 -0300

Olá Tiago,

Cara funcionou mas somente quando retirei o parâmetro "-c 1" da linha 7.
Esse parâmetro -c não era aceito, bom não entendi procurei no man e nada.
Então testei sem o parâmetro e funcionou!

Obrigado.

Sérgio.


On 2/6/07, Tiago Barcellos Peczenyj <address@hidden> wrote:
>
>   Sergio,
>
> todas os argumentos que vc passa para um programa, comando ou função
> no bash , incluindo o -exec do find, são lidos do começo para o fim
> da linha de instrução. Alguns caracteres especiais podem terminar essa
> leitura, como o caso de um comentario :
>
> echo ola # isso nao sera impresso
>
> o '\n' nova-linha e o ';' são sinais que a linha de instrução terminou
>
> ls ; echo 'fim'
>
> isso vale para os pipes, quando vc coloca um | grep ... apos o seu
> find, a sua linha de instrução termina ali, e logo começa uma outra.
> Vc teria q substituir então a opção -exec por alguma instrução que
> fizesse algo semenhante.
>
> Vc pode continuar a lógica usando um terceiro pipe para um xargs, de uma
> olhada
>
> http://pastebin.com/876672
>
> (tomei a liberdade para simplificar o script ao meu bel prazer, numa
> atividade nerd relaxante ao som de pink floyd)
>
> Deve funcionar agora, dê uma olhada. Abraço.
> On 2/6/07, Sergio Maia Rabelo <address@hidden <srabelo%40gmail.com>>
> wrote:
> >
> >
> >
> >
> >
> >
> > Olá pessoal, olhando alguns scripts aqui na lista de remoção de arquivos
> no
> > servidor, resolvi mesclar dois deles mas está acontecendo um erro no
> comando
> > exec.
> > Vejam o erro e abaixo segue o script.
> >
> > extensao: line 12: -exec: command not found
> >
> > #!/bin/bash
> > echo -n "Digite o diretorio de partida: "
> > read DIR
> > echo -n "Existe algum diretorio de excecao: "
> > read RESP
> > if [ $RESP = "S" ]
> > then
> > echo -n "Digite o diretorio de excecao: "
> > read DIR1
> > echo -n "Digite entao a extensao: "
> > read EXT
> > find $DIR -iname "*.$EXT"|grep -vE $DIR1|-exec rm {} \;
> > echo "Arquivos apagados! Aguarde..."
> > sleep 3
> > exit
> > elif [ $RESP = "N" ]
> > then
> > echo -n "Digite a extensao:"
> > read EXT1
> > find $DIR -iname "*.$EXT1" -exec rm {} \;
> > echo "Arquivos apagados! Aguarde..."
> > sleep 3
> > fi
> > exit
> >
> > Valeu pessoal!
> > Sérgio Maia
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
> >
>
> --
> Tiago B Peczenyj
> Linux User #405772
>
> # cd /pub
> # more beer
>
> 
>


[As partes desta mensagem que não continham texto foram removidas]



reply via email to

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