Nunca puedo recordar lo que la conversión es de algo parecido rw-r--r--
a 644
. ¿Hay un simple convertidor basado en web entre los 2?
stat -c
...
Nunca puedo recordar lo que la conversión es de algo parecido rw-r--r--
a 644
. ¿Hay un simple convertidor basado en web entre los 2?
stat -c
...
Respuestas:
Este sitio proporciona una forma interactiva de ver qué bits de permisos se configuran cuando se configuran / desactivan varios bits.
La "calculadora" se ve así:
¿Por qué necesitas un número octal en primer lugar?
Yo siempre 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) es fácil de recordar. Sin embargo, puede confundir o: = propietario? o: = otro? pero ¿cuál sería u si o = dueño? u: = usuario, por lo tanto o = otro.
Algunos comandos solo les gustan los permisos numéricos. De acuerdo, no es difícil de calcular, si recuerdas las dos secuencias: ugo + rwx.
r w x | Sum
u 4 2 1 | 7
g 4 - 1 | 5
o 4 2 - | 6
---------------------
756
Si, muy artificial.
Cuando se trata de sy SI, debe consultar el manual. Quizás google la próxima vez. :)
Me gusta esta calculadora de permisos:
http://file-permissions.ninja
Este es, con mucho, el más conveniente y, además, creo que es exactamente lo que solicitó originalmente:
http://ss64.com/osx/chmod.html
Es completamente interactivo, aunque no puede editar la cadena "-rx -------", pero sí puede ver el octal o las casillas de verificación. Hacer cualquiera actualiza la otra.
De la misma página:
Modo numérico (absoluto):
De uno a cuatro dígitos octales Se supone que los dígitos omitidos son ceros a la izquierda.
El primer dígito = selecciona los atributos para el ID de usuario establecido (4) y el ID de grupo establecido (2) y guarda la imagen de texto (1) El segundo dígito = permisos para el usuario propietario del archivo: lectura (4), escritura (2) y ejecutar (1) El tercer dígito = permisos para otros usuarios en el grupo del archivo: leer (4), escribir (2) y ejecutar (1) El cuarto dígito = permisos para otros usuarios que NO están en el grupo del archivo: leer ( 4), escribe (2) y ejecuta (1)
El valor octal (0-7) se calcula sumando los valores para cada dígito Usuario (rwx) = 4 + 2 + 1 = 7 Grupo (rx) = 4 + 1 = 5 Mundo (rx) = 4 + 1 = 5 modo chmod = 0755
Tengo este pequeño alias que puedes poner en tu .bashrc (o equivalente).
DESCARGO DE RESPONSABILIDAD: No soy el autor del guión, y no estoy seguro de quién lo escribió ... pero le apoyo por hacerlo.
alias lsp="ls -l --color |
awk '{k=0; for(i=0;i<=8;i++) k+=((substr(\$1,i+2,1)~/[rwx]/)*2^(8-i));
if (k) printf(\" %0o \",k); print}'"
echo 'rwxrwxrw-' | perl -ne 'BEGIN{sub conv{ chomp(my $ins=shift); my $k=0; for(my $i=0;$i<=8;$i++) { my $tmps = ( substr($ins, $i, 1) =~ /[rwx]/ ); $k+= ( $tmps*(2**(8-$i)) ); }; if ($k) { sprintf(" %0o ", $k); } else { "??" ; }; }; } print(conv($_)."\n");'
imprimirá " 776
". ¡Aclamaciones!