Cygwin ve un archivo que Windows no puede – quiero acceder a este archivo desde Python

Tengo un dispositivo conectado a mi USB que crea un archivo de registro llamado Tpolling.log. Puedo verlo a través de Cygwin, pero no puedo verlo a través de Windows (con los archivos ocultos configurados para mostrarse siempre). Tampoco puedo acceder a él desde python.

Quiero poder leerlo en python pero python no lo encuentra.

El camino de cygwin que funciona es

/cygdrive/c/Program Files (x86)/TDA 

Una ls muestra que hay un archivo llamado Tpolling.log

 $ cygpath -w "/cygdrive/c/Program Files (x86)/TDA" C:\Program Files (x86)\TDA 

Sin embargo, lo siguiente da un error que dice que no existe un archivo como Tpolling.log. Revisé la ruta base con otros archivos.

 f= open("C:\\Program Files (x86)\\TDA\\TPolling.log",'r') 

Windows no puede ver el archivo Tpolling.log cuando ejecuto “Dir” en el comando propmpt. El archivo se guarda en el dispositivo USB en su memoria flash, no le pedí a cygwin que lo montara, por lo que no estoy seguro de cómo puede verlo.

¿Cómo puedo acceder a él desde python, además de ejecutar el progtwig python desde cygwin?

Aquí están los permisos de archivos de cygwin-

  drwx------+ 1 SYSTEM SYSTEM 0 Jul 23 11:27 . drwx------+ 1 Administrators None 0 Jul 23 14:39 .. -rwx------+ 1 SYSTEM SYSTEM 684032 Dec 27 2010 NationalInstruments.UI.Design.dll -rw -rwx------+ 1 SYSTEM SYSTEM 1078 Jan 3 2010 TDAT.ico -rwx------+ 1 lab Domain Users 2920041 Aug 6 14:50 TPolling.log -rwx------+ 1 SYSTEM SYSTEM 65536 Dec 27 2010 Winsoft.ComPort.dll 

Compatibilidad de aplicaciones de Windows al rescate.

Puede encontrar su archivo de registro en C: \ Users \ USERNAME \ AppData \ Local \ VirtualStore \ Archivos de progtwig (x86) \ TDA \ TPolling.log

Por ejemplo, si navega a C: \ puede ver los siguientes botones en el explorador:

  • Organizar
  • Compartir con
  • Archivos de compatibilidad —> este es tu amigo, haz clic en él.
  • Nueva carpeta

Lo que sucede en el fondo que la función de compatibilidad de aplicaciones de Windows básicamente simula el entorno (por ejemplo, directorios, archivos, claves de registro) para algunos progtwigs, por ejemplo, para Cygwin y el progtwig TDA. Estos archivos están ahí para los progtwigs que necesitan compatibilidad, pero otros progtwigs como explorer.exe no pueden verlo.

Pensé que hay algún rootkit en mi máquina, porque vi archivos de cygwin pero no de Explorer. Al menos resultó que estos archivos no son rootkits, algo así como 🙂

dir /a:h mostrará archivos “ocultos”.

dir /a:s mostrará los archivos del “sistema”.

Si desea ver el archivo en el Explorador de Windows, puede desmarcar la opción “Ocultar archivos protegidos del sistema operativo” en el cuadro de diálogo de opciones de Vista de archivos.

Es posible que desee probar “dir / a: s> files.txt”, y luego examinar ese archivo para ver si hay caracteres no visibles incrustados en ese nombre de archivo, y también para ver si tiene los derechos para leer / actualizar ese archivo De lo contrario, debería poder abrirlo desde Python.

Ok, si alguien tiene un problema similar, así es como resolví el mío. Muchísimas gracias a Curt y abarnert por ayudarme a llegar aquí. Hice que el símbolo del sistema se comportara como cygwin (agregé la ruta cygwin (c: \ cywgin \ bin para mí) a mi variable de ruta) y luego podría usar os.system () para copiar el archivo desde mi progtwig python.