Python multiplataforma archivo oculto

En * nix puedo simplemente añadir un . a un archivo para que sea “oculto”. También hay formas de hacer un archivo oculto en windows.

¿Hay alguna forma en Python para hacer un archivo oculto CROSS PLATFORM?

actualmente:

 def write_hidden(file_name, data): file_name = '.' + file_name with open(file_name_, 'w') as f: f.write(data) 

Pero como dije, eso solo funciona con sistemas * nix.

Podrías hacer algo como esto:

 import os import ctypes FILE_ATTRIBUTE_HIDDEN = 0x02 def write_hidden(file_name, data): """ Cross platform hidden file writer. """ # For *nix add a '.' prefix. prefix = '.' if os.name != 'nt' else '' file_name = prefix + file_name # Write file. with open(file_name, 'w') as f: f.write(data) # For windows set file attribute. if os.name == 'nt': ret = ctypes.windll.kernel32.SetFileAttributesW(file_name, FILE_ATTRIBUTE_HIDDEN) if not ret: # There was an error. raise ctypes.WinError() 

Esto no ha sido probado, pero debería funcionar bien.

También es posible que desee ver estas otras preguntas que me ayudaron a implementar esto:

  • ¿Cómo verifico si estoy ejecutando Windows en Python?
  • Establecer el atributo “ocultar” en las carpetas en el sistema operativo Windows?