Duvida - Shell Script

0 views
Skip to first unread message

Daniel Gariani Rafael

unread,
Oct 27, 2009, 9:24:21 AM10/27/09
to slack-u...@googlegroups.com
Bom dia pessoal.

Tirem uma dúvida... alguém sabe como posso verificar se um arquivo possui permissão de leitura, porém, apenas no que se refere a "outros usuários"?

Testei, por exemplo: if [ -r $FILE ]...
Mas percebi que, se houver permissão de leitura, independente pra quem seja (dono, grupo, outros) ele aceita como verdadeiro, queria que verificasse apenas para "outros".

Não sei se é simples e esta passando desapercebido ou haveria necessidade do uso de "ferramentas" extras...awk, ls, etc...

Att.
 
Daniel Gariani Rafael

Nicholas André

unread,
Oct 27, 2009, 9:30:15 AM10/27/09
to slack-u...@googlegroups.com
talvez vc tenha que filtrar o ls -l para saber rsrsrs, procurando no man do test não achei nada a respeito do que vc pediu...
mas não é difćil criar uma função para checar se o arquivo tem permissões para outros.. basta filtrar o ls -l do local onde o arquivo está e lê o o campo das permissões..

2009/10/27 Daniel Gariani Rafael <daniel...@gmail.com>



--
Nícholas André

Blog : www.iotecnologia.com.br

Linux user number #478230.

Daniel Gariani Rafael

unread,
Oct 27, 2009, 9:44:23 AM10/27/09
to slack-u...@googlegroups.com
Bom dia Nicholas.

Achei que realmente teria que partir para este lado, mas, queria ter certeza antes de fazer, para nao precisar ficar reinventando a roda...

Valeu pela ajuda.

Att.

Daniel Gariani Rafael.

2009/10/27 Nicholas André <nicholasand...@gmail.com>



--
Daniel Gariani Rafael

Psycho Mantys

unread,
Oct 27, 2009, 9:45:05 AM10/27/09
to slack-u...@googlegroups.com
2009/10/27 Daniel Gariani Rafael <daniel...@gmail.com>:
###########################################################################################

Rapaz, você pode usar o find, mas não acho que fique bonito de qualquer forma:

if [ "$( find "${ARQUIVO}" -perm -g=+r )" ] ; then
echo 'Tem permissão para grupo!'
fi

Sacou? Não fica bonito, mas funciona. Não sei usar o find no if, mas
acho que assim é a melhor maneira.......


--
Mi blog eres su blog: https://www.lccv.ufal.br/~psycho/
@psycho_mantys : http://twitter.com/psycho_mantys
http://www.slackware.com
U.L. : 450347
Fnord

Daniel Gariani Rafael

unread,
Oct 27, 2009, 10:27:24 AM10/27/09
to slack-u...@googlegroups.com
Valeu Psyco, para aquilo que estou fazendo, isso é o suficiente, não precisando daquela elegancia toda.

Abraços.

Att.

Daniel Gariani Rafael

2009/10/27 Psycho Mantys <psycho...@gmail.com>



--
Daniel Gariani Rafael

Psycho Mantys

unread,
Oct 27, 2009, 10:44:03 AM10/27/09
to slack-u...@googlegroups.com
2009/10/27 Daniel Gariani Rafael <daniel...@gmail.com>:
> Valeu Psyco, para aquilo que estou fazendo, isso é o suficiente, não
> precisando daquela elegância toda.

>
> Abraços.
>
> Att.
>
> Daniel Gariani Rafael
>
################################################################################

Nada, pow. Precisando estamos ai pra isso....

Continuando.... mas elegância sempre é bom, principalmente em bash
script, que as coisas tendem a ficar confusas. Eu aconselharia a você
fazer uma função que funcionasse com o "test", para ficar mais
bonitinho....

Mas deixa quieto, acho que eu to divagando de mais :p....

Reply all
Reply to author
Forward
0 new messages