Vejam, devidamente testado! :)
O nome do script, aqui, é mudachmoddir (argh... falta de imaginação)
notem que eu criei, com touch, alguns arquivos tmp dentro do
diretorio, e os mesmos não foram afetados quando da aplicação do
chmod, só os diretórios mudaram.
root@xxxx:~/teste#mudachmoddir
utilizacao: ./mudachmoddir {valor do chmod} {diretorio}
root@xxxx:~/teste# testadir 444 teste1
root@xxxx:~/teste# ls -laR teste1/
teste1:
total 12
dr--r--r-- 3 root root 4096 Mar 27 17:07 ./
drwxr-xr-x 3 root root 4096 Mar 27 17:07 ../
dr--r--r-- 3 root root 4096 Mar 27 17:07 teste2/
-rw-r--r-- 1 root root 0 Mar 27 17:07 tmp1
teste1/teste2:
total 12
dr--r--r-- 3 root root 4096 Mar 27 17:07 ./
dr--r--r-- 3 root root 4096 Mar 27 17:07 ../
dr--r--r-- 3 root root 4096 Mar 27 17:07 teste3/
-rw-r--r-- 1 root root 0 Mar 27 17:07 tmp2
teste1/teste2/teste3:
total 12
dr--r--r-- 3 root root 4096 Mar 27 17:07 ./
dr--r--r-- 3 root root 4096 Mar 27 17:07 ../
dr--r--r-- 2 root root 4096 Mar 27 17:08 teste4/
-rw-r--r-- 1 root root 0 Mar 27 17:07 tmp3
teste1/teste2/teste3/teste4:
total 8
dr--r--r-- 2 root root 4096 Mar 27 17:08 ./
dr--r--r-- 3 root root 4096 Mar 27 17:07 ../
-rw-r--r-- 1 root root 0 Mar 27 17:08 tmp4
Reenfatizando que oe script certo é este aqui:
#-----Inicio do script-----
#!/bin/bash
# Testa a sintaxe do script
if [ -z $1 ] || [ -z $2 ]; then
echo "utilizacao: $0 {valor do chmod} {diretorio}"
exit 0
fi
# lista tudo do diretorio $2 em um arquivo temporario
find $2 > /tmp/dirlog.tmp
# Testa para ver o que eh diretorio
for i in `cat /tmp/dirlog.tmp`
do
if [ -d $i ]; then
# Se for diretorio, aplica o chmod com as permissoes setadas em $1
chmod $1 $i
fi
done
# Remove arquivo temporario
rm /tmp/dirlog.tmp
#-----Fim do script-----
Abraços
________________________________
Fabio Bastiglia Oliva - Diretor
[EMAIL PROTECTED]
Safe Networks Informática LTDA.
http://www.safenetworks.com
"Você acha que está seguro? Nós achamos que não!
Visite-nos antes que você vire estatística!
Safe Networks Security Solutions"
Assinantes em 27/03/2001: 2169
Mensagens recebidas desde 07/01/1999: 106782
Historico e [des]cadastramento: http://linux-br.conectiva.com.br
Assuntos administrativos e problemas com a lista:
mailto:[EMAIL PROTECTED]