[Python-es] Agregar/quitar permisos de un archivo
Enric Florit
efz1005 en gmail.com
Mar Sep 13 20:44:27 CEST 2011
Bueno, haciendo algunas pruebas más he conseguido entender lo de las
máscaras de bits.
Lo he resuelto así:
os.chmod(string, (0777 & ~stat.S_IXUSR))
que supongo que era la manera que me propuso lasiozoillo.
Gracias a todos por la ayuda!!
Por cierto...
En el primer mail dije que la duda era para un proyecto de traducción de
código PHP a Python.
El programa está en una fase muy preliminar, pero si queréis verlo y/o
colaborar, se puede descargar desde:
http://code.google.com/p/php2py/
Un saludo!
2011/9/13 Enric Florit <efz1005 en gmail.com>
> Primero, gracias a los dos por responder.
>
> He estado revisando la documentación de python y he hecho algunas pruebas
> como esta:
>
> bin(0777 & ~os.stat(path).st_mode)
>
> Pero esto sólo me devuelve una cadena binaria (el comportamiento esperado
> de la función)
>
> Pero si intento usar el resultado de la función bin() a os.chmod(), me dice
> que el argumento tiene que ser un entero:
>
> File "php2py.py", line 331, in <module>
> os.chmod(string, mask)
> TypeError: an integer is required
>
> Es que estoy pasando por alto algo o no entendí correctamente lo que me
> habéis dicho?
>
>
> 2011/9/13 Jose Caballero <jcaballero.hep en gmail.com>
>
>>
>>
>>
>> > .
>>
>> >
>> > Para solventar esto, he intentado usar de nuevo os.chmod, pero si
>> primero le adjudico permisos de lectura y luego de escritura, se borran los
>> de lectura, y viceversa.
>> >
>>
>> Puedes adjudicar más de uno a la vez, operando primero a nivel de bits.
>> stat.S_blabla | stat.S_bleble | stat.S_bloblo ....
>>
>> O, en este caso particular, simplemente aplicando una máscara como ya te
>> han comentado.
>>
>>
>> Suerte,
>> Jose
>> _______________________________________________
>> Python-es mailing list
>> Python-es en python.org
>> http://mail.python.org/mailman/listinfo/python-es
>> FAQ: http://python-es-faq.wikidot.com/
>>
>
>
>
> --
> $$$$$ $$ $$ $$$$$ $$ $$$
> $$ $$$ $$ $$ $$ $$
> $$$ $$ $ $$ $$$$$ $$ $$
> $$ $$ $$$ $$ $$ $$ $$
> $$$$$ $$ $$ $$ $$ $$ $$$
>
--
$$$$$ $$ $$ $$$$$ $$ $$$
$$ $$$ $$ $$ $$ $$
$$$ $$ $ $$ $$$$$ $$ $$
$$ $$ $$$ $$ $$ $$ $$
$$$$$ $$ $$ $$ $$ $$ $$$
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://mail.python.org/pipermail/python-es/attachments/20110913/efc9043b/attachment.html>
Más información sobre la lista de distribución Python-es