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

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

Re: [shell-script] Permissões variadas


From: Julio C. Neves
Subject: Re: [shell-script] Permissões variadas
Date: Sat, 15 Dec 2007 21:58:48 -0200

Fala Mop,
dá uma olhada no Papo de
Botequim<https://twiki.softwarelivre.org/bin/view/TWikiBar/TWikiBarBirinaite#Rotat%25F3rio_Peczenyj>,
que lá tem um exemplo, usando uma lógica postada pelo Tiago que peguei na
lista e que faz exatamente o que vc diz que não tem como fazer em poucas
linhas. Veja:

$ A={`seq -s , 0 7`}
$ eval echo -e $A$A$A | tr ' ' '\n' | xargs -i bash -c "chmod {} arq; ls -l
arq"
---------- 1 julio julio 100 2006-11-27 11:50 arq
---------x 1 julio julio 100 2006-11-27 11:50 arq
--------w- 1 julio julio 100 2006-11-27 11:50 arq
--------wx 1 julio julio 100 2006-11-27 11:50 arq
-------r-- 1 julio julio 100 2006-11-27 11:50 arq
-------r-x 1 julio julio 100 2006-11-27 11:50 arq
-------rw- 1 julio julio 100 2006-11-27 11:50 arq
-------rwx 1 julio julio 100 2006-11-27 11:50 arq
. . . . . . . . . . . . . . . . . .
-rwxrwxrw- 1 julio julio 100 2006-11-27 11:50 arq
-rwxrwxrwx 1 julio julio 100 2006-11-27 11:50 arq

Para entender vá ao link acima, pois lá está esmiuçado, e aproveite para
tomar um chope por conta da casa. :)

Agora qto ao cara que perguntou: o que define se um arquivo é do grupo A, B,
C, ..., Z? Se for um pedaço do nome do arquivo, como eu suponho, é fácil.
Veja:

$ ls *Grupo_A* | xargs chmod nnn

Neste caso bastando substituir o "Grupo_A" e o "nnn"

Abração,
Julio



Em 15/12/07, mop <address@hidden> escreveu:
>
> Não vejo que exista nativamente no sistema operacional os recursos
> para fazer o que deseja, que seria em essência todas as combinações
> possíveis de permissões aplicadas entre grupos e arquivos. Vamos ao ao
> maior universo mencionado, que parece ter cinco grupos, sendo o quinto
> constituído pelos usuários que não perctencem a nenhum do quatro
> especificados.
>
> Dentro de aplicações você, escrevendo a aplicação, pode fazer o que
> quiser.
> Se o usuário souber onde estão os arquivos e tiver direitos via sistema
> operacional ele pode burlar isso.
> Igualmente o usuário do SO está limitado pelo sistema, como ele foi
> escrito e
> pelos direitos que o administrador concedeu, mas se você descer abaixo e
> puder acessar diretamente o dispositivo que guarda os arquivos também
> poderá
> burlar as limitações que possue no SO.
>
> Não vejo uma solução genérica para a questão colocada, mas como ela parece
> estimulante, uma vez percebida uma aplicabilidade prática, que vá além da
> simples verificação das combinações possíveis de um conjunto de bits, eu
> com certeza pensaria a respeito. Em termos práticos, falando de um
> executável (não interpretado), por que o grupo B precisaria poder ler?
> Quer
> dizer, parece-me que nesse caso (dos 5 grupos) o velho sistema de três
> entidades atende efetivamente a realidade que consigo imaginar.
>
> Não consigo perceber o que estou deixando escapar.
>
>
>
> ------------------------------------------------------------------
> >de maneira parecida, em outro conjunto de arquivos, gostaria das
> seguintes
> >permissoes:
> >grupo A: ler, escrever, executar
> >grupo B: ler, executar
> >grupo C: executar
> >grupo D: nenhuma permissao
>
>
>
> ---------------------------------------------------------------------
> Esta lista não admite a abordagem de outras liguagens de programação, como
> perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio
> aviso.
> ---------------------------------------------------------------------
> Sair da lista: address@hidden
> ---------------------------------------------------------------------
> Esta lista é moderada de acordo com o previsto em
> http://www.listas-discussao.cjb.net
> ---------------------------------------------------------------------
> Servidor Newsgroup da lista: news.gmane.org
> Grupo: gmane.org.user-groups.programming.shell.brazil
>
>
> Links do Yahoo! Grupos
>
>
>


-- 
Abraços,
Julio
Feliz Natal
:wq


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



reply via email to

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