Vinicius Costa Carvalho wrote:
>Saudações Linuxistas de plantão.
>
>Seguinte, eu estou querendo verificar as permissões de alguns arquivos
>com o "find | if" mas estou tendo dificuldades, alguém tem alguma
>idéia? Seguem algumas tentativas que falharam:
>
>find /pasta -type f -print | if [ -r "$0" ] then echo ok else echo erro
> fi \;
>
>find /pasta -type f -exec if [ -r {} ] then echo ok else echo erro fi \;
Olá Vinícius
find -type f -exec sh -c 'if [ -r {} ]; then echo ok; else echo erro; fi' \;
Ou, para funcionar com espaços:
find -type f -exec sh -c 'if [ -r "{}" ]; then echo ok; else echo erro; fi'
\;
Com o xargs:
find -type f | xargs -i sh -c 'if [ -r "{}" ]; then echo ok; else echo
erro; fi'
Com o while:
find -type f | while read f; do if [ -r "$f" ]; then echo ok; else echo
erro; fi; done
Note que o comando acima é muito mais rápido que qualquer uma das
alternativas anteriores.
E, por fim, a maneira mais simples:
find -type f -perm +400
--
Thiago Macieira - thiago (AT) macieira.info - thiago (AT) kde.org
PGP/GPG: 0x6EF45358; fingerprint:
E067 918B B660 DBD1 105C 966C 33F5 F005 6EF4 5358
---------------------------------------------------------------------------
Esta lista é patrocinada pela Conectiva S.A. Visite http://www.conectiva.com.br
Arquivo: http://bazar2.conectiva.com.br/mailman/listinfo/linux-br
Regras de utilização da lista: http://linux-br.conectiva.com.br
FAQ: http://www.zago.eti.br/menu.html