Я запускаю файл .py из Планировщика задач Windows. Для большинства файлов это нормально работает следующим образом:
- Создать новую задачу в TS
- В TS на вкладке «Действия» в разделе «Программа / сценарий:» укажите путь к python.exe (Пример: C: \ Users \ User \ Python.exe)
- В TS в разделе «Добавить аргументы» добавьте путь к файлу .py в кавычках (пример: «C: \ Path \ To \ Py \ pythonfiletorun.py»)
Когда это работает правильно, Python.exe появляется на долю секунды, запускает программу и исчезает.
Однако у меня есть один файл .py, который не работает. Когда я пытаюсь запустить его из консоли QT, он работает нормально. Когда я использую процесс TS, он терпит неудачу. И Python.exe закрывается так быстро, что я не вижу, что не так.
Я попытался преобразовать все в пакетный файл, так что «Программа / сценарий» становится «cmd», а «Добавить аргументы» становится: / k «C: \ Path \ To \ batchfile.bat», в котором затем хранятся пути и инструкции.
Это открывает командную строку (и оставляет ее открытой), но отсюда основная командная строка открывает командную строку python.exe, которая запускается и закрывается так же быстро.
Я пытался разместить / k в разных местах, но безрезультатно.
Я также попытался поместить квалификатор ввода в конец сценария .py (например, input («Нажмите любую клавишу, чтобы ...») в надежде, что команда Python.exe останется открытой, но это не так.
В конечном итоге мне нужна команда Python.exe, чтобы оставаться открытым и видеть, что не так.
-i
к вашим аргументам, чтобы активировать интерактивный режим после запуска (или сбоя) - person Aaron   schedule 22.03.2017start
cmd в пакетном файле, обратите внимание, что по умолчанию она создает новую консоль. Либо не используйте его, либо добавьте параметры/b /w
, чтобы он использовал текущую консоль и подождите. Или просто запустите его без командного файла, например что-то вродеcmd.exe /k ""path\to\python.exe" "path\to\script.py""
. Предложение Аарона использовать параметр Python-i
также должно сработать. - person Eryk Sun   schedule 22.03.2017C:\some\folder>python script.py -i
. вызов>python -h
из окна cmd для всех опций - person Aaron   schedule 22.03.2017cmd
. - person Thomas Weller   schedule 22.03.2017getch()
в модулеmscvrt
. См. Python считывает один символ от пользователя < / i>, чтобы сделать паузу до нажатия символа. - person martineau   schedule 22.03.2017-i
стоит перед именем скрипта, например."path\to\python.exe" -i "\path\to\script.py"
. - person Eryk Sun   schedule 22.03.2017cmd /k
. Параметр -i подходит для всего, кроме сбоя. Если Python дает сбой (например, исключение нарушения прав доступа Windows), то можно использовать оболочкуcmd /k
. - person Eryk Sun   schedule 23.03.2017