Cómo usar os.umask () en Python
Estoy tratando de establecer un umask utilizando el módulo os. Tenga en cuenta que mi umask normal establecido en mi ~ / .profile es umask 0027.
En una concha de bash,
umask 0022
Permitirá la creación de un archivo con permisos.
-rw-r--r--
Sin embargo, cuando importamos el módulo os y hacemos esto:
os.umask(0022)
[do some other code here that creates a file]
Me dan permisos de
----------
Primero, ¿cómo hago que os.umask (máscara) se comporte como umask en el shell?
Segundo, ¿cuál es la lógica entre la diferencia de los dos?
Nota: Intenté convertir el 0022 a decimal en caso de que esté esperando un decimal haciendo:
os.umask(18)
pero le dio permisos de
-----w--w-
También nota, lo intenté
os.umask(00022)
y
os.mask(0o0022)
Lo que tampoco funcionó.