Existe um conversor baseado na web entre o rwx e a versão octal?

26

Eu nunca consigo lembrar qual é a conversão de algo como rw-r--r-- para 644 . Existe um conversor simples baseado na web entre os 2?

    
por Darryl Hein 18.03.2011 / 06:27

6 respostas

26

Este site fornece uma maneira interativa de ver quais bits de permissão são definidos quando vários bits são definidos / não definidos.

A "calculadora" é assim:

    
por 18.03.2011 / 06:44
11

Por que você precisa de um número octal em primeiro lugar?

Eu sempre uso:

chmod o+x file   # all + eXecute permissions
chmod g-w file   # group - write perms
chmod u=r file   # user can just read
chmod ug=rw file # user,group = read and write
chmod a+w file   # user,group,others + write 

ugo (a) é fácil de lembrar. No entanto, você pode confundir o: = owner? o: = outro? mas o que seria u, se o = proprietário? u: = usuário, portanto o = outro.

Alguns comandos, como somente permissões numéricas. Ok, não é difícil calcular, se você se lembrar das duas sequências: ugo + rwx.

    r   w   x  | Sum
u   4   2   1  | 7
g   4   -   1  |  5
o   4   2   -  |   6
---------------------
                 756

Sim, muito artificial.

Quando se trata de s e S eu tenho que consultar o manual. Talvez google da próxima vez. :)

    
por 18.03.2011 / 10:34
8

O Octal é usado para permissões porque é uma conversão fácil . Cada grupo de rwx forma um dígito octal. Tudo o que você precisa lembrar é dos 3 primeiros poderes de 2: 4, 2, 1. r = 4, w = 2, x = 1.

rw-r--r-- = 110 100 100 = 4+2+0 4+0+0 4+0+0 = 644

    
por 18.03.2011 / 07:09
5

Eu gosto dessa calculadora de permissões: link

    
por 17.10.2014 / 22:05
4

Este é de longe o mais conveniente e é, além do que acredito, exatamente o que você pediu originalmente:

link

É totalmente interativo, embora você não possa editar a string "-r-x -------", mas você pode usar octal ou as caixas de seleção. Fazer um atualiza o outro.

Da mesma página:

Modo numérico (absoluto):

De um a quatro dígitos octal Todos os dígitos omitidos são considerados zeros à esquerda.

O primeiro dígito = seleciona os atributos para o ID de usuário definido (4) e define o ID do grupo (2) e salva a imagem do texto (1) O segundo dígito = permissões para o usuário que possui o arquivo: read (4), write (2) e execute (1) O terceiro dígito = permissões para outros usuários no grupo do arquivo: read (4), write (2) e execute (1) O quarto dígito = permissões para outros usuários NÃO no grupo do arquivo: read (4), write (2) e execute (1)

O valor octal (0-7) é calculado somando os valores de cada dígito Usuário (rwx) = 4 + 2 + 1 = 7 Grupo (rx) = 4 + 1 = 5 Mundo (rx) = 4 + 1 = 5 modo chmod = 0755

    
por 29.11.2014 / 15:49
4

Eu tenho este pequeno alias que você pode colocar no seu .bashrc (ou equivalente).

ISENÇÃO DE RESPONSABILIDADE: Eu não sou o autor do script, e não tenho certeza de quem o escreveu ... mas adere a ele / ela por fazer isso.

alias lsp="ls -l --color | 
      awk '{k=0; for(i=0;i<=8;i++) k+=((substr(\,i+2,1)~/[rwx]/)*2^(8-i));
      if (k) printf(\" %0o \",k); print}'"
    
por 18.03.2011 / 08:50