msoliver
(usa Debian)
Enviado em 30/09/2020 - 19:37h
VanesaOsto escreveu:
Geral, eu não sei nada
Boa noite VanesaOsto.
Essa situação é bastante triste.....
Segue sugestão...
#!/bin/bash
#Escolha o arquivo ou diretório
file=$(dialog --stdout --title "Escolha:\nfile ou dir." --fselect $HOME 24 48);
#Checa se existe, caso positivo solicita que escolha a opção.
if [ -e ${file} ];then
opcao=$( dialog --stdout --menu 'O que fazer com a Permissão.' 0 0 0 1 Alterar 2 Adicionar 3 Remover 4 Exibir );
case $opcao in
1) echo -e "Alterar Permissões\n";chmod a=rwx ;;
2) echo -e "Adicionar Permissões\n";chmod a+rwx $file ;;
3) echo -e "Remover Permissões";chmod a-rwx $file ;;
4) echo -e "Exibe Permissões e outros\n";stat --printf="Perm: %A\nTipo: \"%F\"\nSize: %s bytes\n\n" ${file} ;;
*) echo -e "Nada a fazer\n" ;;
esac
else
#Mensagem, caso não exista
echo "${file} não existe";
fi
Veja bem,
Para Alterar, Adicionar ou Remover,
Pela lógica, deve-se saber qual a permissão atual/original, e também, se é arquivo ou diretório
e assim, dar continuidade....
Não sei se fui objetivo...
Tipo, como vou "remover", se não sei o que tem.....
Se o arquivo está com a permissão "777" (sem considerar permissões especiais),
Não há nada a Adicionar.....
#Pega a permissão:
perm=$(stat --printf "%a\n" ${file})
#Pega se é arquivo ou dir
stat --printf "%F\n" ${file})
#Permissões:
echo -e "
Letra Binário Decimal Significado
— 000 0 Sem_Permissão
–x 001 1 Execução
-w- 010 2 Escrita
-wx 011 3 Escrita/Execução
r– 100 4 Leitura
r-x 101 5 Leitura/Execução
rw- 110 6 Leitura/Escrita
rwx 111 7 Total\n"|column -t
PERMISSOES ESPECIAIS
Octal Binário Significado
0 000 nenhuma permissão especial
1 001 sticky bit
2 010 SGID
3 011 SGID e sticky bit
4 100 SUID
5 101 SUID e sticky bit
6 110 SUID e SGID
7 111 SUID, SGID e sticky bit
______________________________________________________________________
Importante: echo -e "\n$(lynx --dump goo.gl/a9KeFc|sed -nr '/^[ ]+Se/,/dou.$/p')\n"
Att.: Marcelo Oliver
______________________________________________________________________