Khi bạn có thể thực hiện các công việc cron, một giải pháp tốt đẹp sẽ là tách tập lệnh của bạn trong hai phần, một để yêu cầu khi kịch bản sẽ được thực thi và kịch bản khác là tập lệnh thực tế.
kịch bản đầu tiên của bạn sẽ tạo ra một công việc định kỳ để sắp xếp việc thực hiện các kịch bản, cho rằng bạn có thể sử dụng gói python-crontab:
pip install python-crontab
Để tạo công việc định kỳ:
from datetime import datetime
from crontab import CronTab
run_date_input = raw_input("Please enter a date (e.g. 2017-11-28): ")
run_time_input = raw_input("What time do you want to start the script (e.g. 14:30:12)? ")
run_date = datetime.strptime(run_date_input, "%y-%m-%d")
run_time = datetime.strptime(run_time_input, "%H:%M:%S")
#Access the crontab for the current user (on unix systems)
user_cron = CronTab(user='your username')
#Access the crontab (on windows sytems)
user_cron = CronTab(tabfile='c:/path_to_your_tab_file/filename.tab')
#Create a new job
job = user_cron.new(command='python /home/your_second_script.py')
job.setall(datetime(run_date.year, run_date.month, run_date.day, run_time.hour, run_time.minute, run_time.second))
Nếu bạn sử dụng cửa sổ, bạn cần phải cài đặt cron cho windows bằng cách sử dụng một cái gì đó như cygwin hoặc hệ thống con Linux mới cho Windows 10.
Tạo một tác vụ trong hệ điều hành để chạy tập lệnh –
'enter_date' là một chuỗi, bạn cần phải chuyển đổi nó thành một đối tượng ngày trước khi tính toán sự khác biệt. – Faibbus
Bạn có đang sử dụng windows hoặc linux (unix) không? – Isma