Ocultar carpetas / archivo con Python

¿Hay alguna forma de ocultar carpetas / archivos con Python?

Estoy trabajando en un gran proyecto (un escáner de vulnerabilidad). El proyecto crea muchos archivos y carpetas. Por lo tanto, la pregunta, ¿hay alguna forma de hacer un script que oculte archivos y carpetas?

Si no desea enfrentarse a la molestia de utilizar pywin32, puede llamar a SetFileAttributes con ctypes en la biblioteca estándar.

ctypes.windll.kernel32.SetFileAttributesW(path, 2) 

path debe ser un tipo de cadena Unicode ya que esta es la versión Unicode de SetFileAttributes. La constante 2 es de esta página (FILE_ATTRIBUTE_HIDDEN). Me imagino que no hay forma de obtener buenos nombres constantes de ctypes, por lo que tendrá que buscarlos usted mismo.

 import tempfile 

Consulte la documentación .

Aquí, “archivo oculto” significa “El archivo se puede leer y escribir solo con la ID de usuario creadora”. es decir, el significado es “ocultar archivo de otros usuarios”.

Si esto es para Windows:

http://code.activestate.com/recipes/303343/

Resumen: importar win32api, win32con, os win32api.SetFileAttributes (nombre de archivo, win32con.FILE_ATTRIBUTE_HIDDEN)

Si para Unix:

filename = “.” + nombre de archivo

para la dirección del archivo en nombre de archivo use r como prefijo porque la dirección contiene barras inclinadas hacia atrás … por ejemplo, r “c: … \ file”

Si puede poner sus datos en un archivo de estilo DBM, solo tendrá un único archivo de datos.

http://docs.python.org/library/anydbm.html

En lugar de nombres de archivo, usaría claves en la base de datos y el contenido de su archivo se encontraría al indexar en la base de datos.

Esto requiere que sus archivos individuales sean lo suficientemente pequeños para que puedan cargarse fácilmente cada vez que necesite acceder a una parte de ellos. Si son grandes, entonces considere dividirlos y usar las teclas DBM para acceder a fragmentos de la misma. Por ejemplo, si “example.txt” contiene muchas líneas y desea poder acceder a cada una de ellas de forma individual, puede guardarlas como db["example.txt/l1"]db["example.txt/l42"] .

es. $ nombre de archivo el tipo de cosa que estás buscando?

es posible (al menos con linux y ext fs) abrir / crear un archivo y mantener solo el manejador de archivos disponible para las operaciones de lectura / escritura del proceso activo, pero ningún otro proceso puede ver ese archivo en los directorios o en cualquier lugar.

depende del sistema operativo y del sistema de archivos, y es tan simple como:

 fh = open("data", "w+") os.system("unlink data") fh.write(sth) ... 

Archivo muy volátil y una solución un poco complicada, pero funciona bien.