On Friday 14 July 2006 13:23, Victor Leonardo wrote:
[cut]
> Teria como eu verificar se um arquivo possui determinada permissão para
> um usuário que não seja o atual, por exemplo, rodando a shell como root,
> verificar se um usuário comum possui permissão de escrita e leitura em
> um arquivo?
Procura em /tmp por aquivos cujo owner é "herbert" e permissão 0644, ou seja,
owner pode ler/escrever e demais apenas ler; redireciona a saída (formatada
como perm/owner/arquivo) p/ teste.txt:
$ find /tmp -user herbert -perm 644 -fprintf teste.txt '%#m %u %p\n'
$ cat teste.txt
0644 herbert /tmp/kde-herbert/konquerorfz1Khb.tmp
0644 herbert /tmp/kde-herbert/konquerorDkGkQb.tmp
0644 herbert /tmp/kde-herbert/konquerorrx92Za.tmp
Outro exemplo:
$ find /tmp -user herbert -perm u+rw -fprintf teste.txt '%#m %u %p\n'
0600 herbert /tmp/kde-herbert/gradient_header3FU9Kb.png
0600 herbert /tmp/kde-herbert/gradient_shadownhR8yb.png
0600 herbert /tmp/kde-herbert/gradient_shadowhLEEYb.png
A diferença agora é que a procura é "pelo menos" a permissão especificada:
$ find /tmp -user herbert -perm -644 -fprintf teste.txt '%#m %u %p\n'
0755 herbert /tmp/ksocket-herbert/faleiros-17b5-44a7371c
0755 herbert /tmp/ksocket-herbert/faleiros-1370-44a72ccf
0755 herbert /tmp/ksocket-herbert/faleiros-135f-44a72cb6
---------------------------------------------------------------------
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