Назад | Перейти на главную страницу

Можно ли запустить задачу в последний день месяца с помощью taskmgr?

Я заметил, что вы можете установить день месяца только как положительное число 1..31 в графическом интерфейсе запланированных задач в Windows (Windows server 2003).

Можно ли запустить задачу только на последний день месяца? (Это не фиксированный день, например, в феврале это может быть 28 или 29 день месяца, а в другие месяцы это может быть 30 или 31 число.)

Связанный с этим вопрос: если я поставлю задачу на выполнение 31 числа каждого месяца, будет ли она выполняться в месяцы с меньшим количеством дней? Или в таких случаях он будет работать 1 числа следующего месяца?

Создайте задачу с помощью schtasks команда с /mo LASTDAY вариант:

schtasks планирует выполнение команд и программ периодически или в определенное время. Добавляет и удаляет задачи из расписания, запускает и останавливает задачи по запросу, а также отображает и изменяет запланированные задачи.

Синтаксис:

schtasks /create /tn TaskName /tr TaskRun /sc schedule [/mo modifier]
         [/d day] [/m month[,month...] [/i IdleTime] [/st StartTime] 
         [/sd StartDate] [/ed EndDate] [/s computer [/u 
         [domain\]user /p password]] 
         [/ru {[Domain\]User | "System"} [/rp Password]] /? 

Не уверен, что графический интерфейс поддерживает это изначально, но вы можете получить задачу запустить сценарий vbs или что-то еще заранее. Что-то вроде:

sub LastDateOfCurMonth () dim lstDateCurMonth, fstDateCurMonth, fstDateNxtMonth fstDateCurMonth = "01 /" & Месяц (дата) & "/" & Год (Дата) fstDateNxtMonth = DateAdd ("m", 1thDateCurMonth = DateAdd ("m", 1thDateCurMonth) -1, fstDateNxtMonth) wscript.echo "Последняя дата текущего месяца:" & lstDateCurMonth End Sub

Установите несколько расписаний для одной и той же задачи. Одно расписание на месяцы, заканчивающиеся 31-го числа, одно на месяцы, заканчивающиеся 30-го числа, а другое - на 28-е. Все, что вам нужно сделать, это дать каждой задаче уникальное имя.