ПРИМЕЧАНИЕ 1. Все файлы выполняются с использованием cmd в моем профиле и получают правильные результаты. Но не с планировщиком задач windows.
**> ПРИМЕЧАНИЕ 2. Наконец-то я получил вывод, что glob.glob и os.listdir не
работают в планировщике задач windows в моем скрипте python, в котором я устанавливаю соединение с удаленным сервером, но это работает на моем локальном компьютере с использованием cmd и pycharm. ** **
print("before for loop::", os.path.join(file_path, '*'))
print(glob.glob( os.path.join(file_path, '*') ))
for filename in glob.glob( os.path.join(file_path, '*') ):
print("after for loop")
** При запуске выше .py сценария я получил: before for loop:: c:\users\path\dir\*
При выполнении print(glob.glob( os.path.join(file_path, '*') ))
предоставление "[]"
и не может найти причину?
Я перешел по этой ссылке StackOverflow для настройки Windows Планировщик для python, сославшись на комментарий MagTun: Планирование файла .py в Задаче Планировщик в Windows 10
В настоящее время у меня есть scheduler.py , который вызывает еще 4 файла .py.
Когда я пытаюсь запустить Scheduler.py из Windows Задача SCHEDULER,
Он запускается Scheduler.py, а затем через 1 минуту он запускает все остальные 4 .py файла и завершает работу в течение секунд. Не выдавая никакого вывода в поиске elasti c.
Я использовал это для сценария cmd:
@echo off
cmd /k "cd /d D:\folder\env\Scripts\ & activate & cd /d D:\folder\files & python scheduler.py" >> open.log
timeout /t 15
В этой вышеупомянутой команде cmd ничего не сохраняется в открытом состоянии. ведение журнала при работе с windows планировщиком задач.
Сценарий с несколькими планировщиками подпроцессов .py выглядит следующим образом:
from apscheduler.schedulers.blocking import BlockingScheduler
import datetime
from subprocess import call
from datetime import datetime
import os
from apscheduler.schedulers.blocking import BlockingScheduler
def a():
call(['python', r'C:\Users\a.py'])
def b():
call(['python', r'C:\Users\b.py'])
def c():
call(['python', r'C:\Users\c.py'])
def d():
call(['python', r'C:\Users\d.py'])
if __name__ == '__main__':
scheduler = BlockingScheduler()
scheduler.add_job(a, 'interval', minutes=1)
scheduler.add_job(b, 'interval', minutes=2)
scheduler.add_job(c, 'interval', minutes=1)
scheduler.add_job(d, 'interval', minutes=2)
print('Press Ctrl+{0} to exit'.format('Break' if os.name == 'nt' else 'C'))
try:
scheduler.start()
print("$$$$$$$$$$$$$$$$$$")
except (KeyboardInterrupt, SystemExit):
print("****#####")
pass