%20en%20acceso%20directo%2Fenlace%20en%20Windows%207%3F.png)
Me gustaría ejecutar un script de Python 3 de forma silenciosa al iniciar el sistema usando un acceso directo/enlace (.lnk) en el inicio automático.
pythonw.exe de Python se ejecutará como un proceso sin ventanas con mi script solo si canaliza stdout y stderr en algún lugar, por ejemplo pythonw script.pyw >nul 2>&1
. Esto funciona desde CMD.
No funciona cuando se proporciona como destino de enlace de Windows. Esto se expande automáticamente a c:\Python34\pythonw.exe script.pyw >nul 2>&1
. Las comillas dobles alrededor del comando se eliminan automáticamente. El proceso pythonw.exe solo se ejecuta brevemente cuando se ejecuta el enlace.
Respuesta1
Lo tengo para trabajar
C:\Windows\system32\CMD.exe /C start /B pythonw.exe script.pyw >nul 2>&1
Cuando se ejecuta, la ventana CMD se muestra brevemente. Parece que los operadores de canalización CMD no son interpretados por el "mecanismo" de enlace de Windows, sino que se envían al programa como argumentos/opciones. Esto se resuelve ejecutando CMD con /C para pasar el comando START y ejecutar pythonw como un proceso independiente.
Otras lecturas:
- http://ss64.com/nt/cmd.html- Inicie un nuevo shell CMD y (opcionalmente) ejecute un comando/programa ejecutable.
- http://ss64.com/nt/start.html- Iniciar un programa, comando o secuencia de comandos por lotes (se abre en una nueva ventana).
- http://ss64.com/nt/syntax-redirection.html