Перенаправление команд CMD (конвейеры) в ярлыке/ссылке в Windows 7?

Перенаправление команд CMD (конвейеры) в ярлыке/ссылке в Windows 7?

Я хотел бы запустить скрипт Python 3 автоматически при запуске системы, используя ярлык/ссылку (.lnk) в автозапуске.

Python's pythonw.exe будет работать как безоконный процесс с моим скриптом только если куда-то перенаправить stdout и stderr, например pythonw script.pyw >nul 2>&1. Это работает из CMD.

Не работает, если указано как цель ссылки Windows. Это автоматически расширяется до c:\Python34\pythonw.exe script.pyw >nul 2>&1. Двойные кавычки вокруг команды удаляются автоматически. Процесс pythonw.exe выполняется только на короткое время при запуске ссылки.

решение1

Я заставил это работать с

C:\Windows\system32\CMD.exe /C start /B pythonw.exe script.pyw >nul 2>&1

При запуске на короткое время отображается окно CMD. Похоже, что операторы CMD pipe не интерпретируются "механизмом" ссылок Windows, а отправляются в программу как аргументы/опции. Это решается фактическим запуском CMD с /C для передачи команды START для запуска pythonw как отдельного процесса.

Дальнейшее чтение:

Связанный контент