Я хочу создать запланированную задачу, используя C: \ Windows \ System32 \ schtasks.exe в perl-скрипте. Я использую следующий скрипт:Расписание taks с schtask.exe дает ошибку недопустимый синтаксис в скрипте
use strict;
my $createScheduleTask = `SchTasks /Create /SC WEEKLY /D MON,TUE,WED,THU,FRI /TN \"updater\" /TR \"\\\\network\\shared\\updater.bat\" /ST 19:00`;
Но я получаю следующий ответ:
ERROR: Invalid syntax.
Type "SCHTASKS /?" for usage.
Когда я запускаю ту же команду в интерфейсе командной строки он работает отлично (я сделал удалить побег «\ '-s.) Я пробовал все возможные комбинации escape-символов, но я не могу узнать, что не так.
Значит, кто-нибудь знает, что не так, или кто-нибудь знает, как его отладить?
Благодаря
Rudy
PS Я не хочу использовать Win32 :: TaskScheduler, так как он не установлен на всех клиентах.
Ваш код работал отлично на моем конце. Я получил следующий результат: 'C: \ Users \ Chankey \ Desktop> perl test.pl УСПЕХ: Запланированное задание« updater »успешно создано.« –
Здесь работает, вырезать и вставлять ошибку? Проблема с разрешениями? –
Измените 'my $ createScheduleTask = \' ... \ ';' на 'my $ cmd = qq \' ... \ '; my $ createScheduleTask = \ '$ cmd \'; ', поэтому вы можете распечатать команду, которую вы фактически выполнили, и найти синтаксическую ошибку. – ikegami