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

Re: Shell-Script para alterar permissões



Em Qua, 2005-09-21 às 00:07 -0300, Augusto Hagiro Pascutti - TBON3
escreveu:
> Bom dia,
> 
> Já tentei e não consegui fazer um shell-script (bash) para alterar
> permissões de determinados diretórios dentro de outros. Simplismente
> preciso disto e não consegui fazer .. tentei fazendo uma lista com os
> nomes dos diretórios que teriam as permissões diferentes, e criei um
> sheel-script pra ir mudando as  buscando o local daquelas pastas, mas
> simplismente ele não entra nos diretórios ( não os acha dentro da
> máquina) .. haeria um jeito melhor de se fazer isso ? Pra vcs
> entenderem melhor a situação é a seguinte.
> 
> /home/eu
> ~/eu/AQUI
> ~/eu/AQUI/pode
> ~/eu/AQUI/npode
> ~/eu/AQUI2/pode
> ~/eu/AQUI2/npode
> 
> TEnho 2 usuários, quero que o usuário 'A' acesso tudo, e o usuário 'B'
> acesse só os que tem "pode" no nome do diretório. Como faço isso !??
> Eu sei o esquema de permissões, deixo isso bem claro; o que eu quero é
> o algoritmo para aplicar as permissões em todas as subpastas do
> diretório.
> 
> Agradeço desde já a ajuda de vcs

Olá Augusto,

Não seria mais fácil definir as permissões desejadas "na unha"? Se a
quantidade de diretórios for realmente grande, talvez o ideal seja
utilizar o find para obter a lista dos diretórios adequados (com filtros
baseados no nome, profundidade na hierarquia e tipo de arquivo "-d" para
diretórios, por exemplo) e aplicar o chmod com o parâmetro "-exec" do
find. Por exemplo, imagine que vc queira definir as permissões 2770 e
também definir o grupo dono como "vendas" de todos os diretórios da
hierarquia que se chamem "pode", execute:

# find . -name pode -type d -exec chmod 2770 {} \;
# find . -name pode -type d -exec chown :vendas {} \;

Modifique os parâmetros conforme o necessário, isso foi só um exemplo.

-- 
Marcos S. Trazzini <mstrazzini@gmail.com>



Reply to: