Исправить запланированное задание, которое не запускается для файла .BAT


Если у вас есть файл .BAT и вы пытаетесь запустить его автоматически с помощью планировщика задач в Windows, возможно, вы столкнулись с проблемой, из-за которой он просто не запускается, если вы не запустите задачу вручную.

р>

Я создал пакетный файл, который удаляет все содержимое временной папки при каждом запуске компьютера. Я создал базовую задачу в планировщике задач и надеялся на лучшее. К сожалению, ничего не произошло, когда мой компьютер загрузился. После долгих проб и ошибок я понял, как запустить скрипт.

В этой статье я расскажу вам о настройках и разрешениях, которые необходимо настроить, чтобы командный файл запускался без ручного вмешательства.

Шаг 1. Проверьте права доступа к файлу/папке

Первый шаг к устранению этой проблемы — убедиться, что учетная запись, которую вы используете для запуска сценария в планировщике задач, имеет разрешения на полный доступ к папке, содержащей сценарий, самому сценарию, а также всем папкам/файлам, которых затрагивает сценарий при он работает.

Например, я создал следующий пакетный скрипт ниже:

set folder="C:\test"
cd /d %folder% for /F "delims=" %%i in ('dir /b') do (rmdir "%%i" /s/q || del "%%i" /s/q)

Я сохранил файл .BAT в папке «Документы». Путь: C:\Users\username\Documents . Я зашел в C:\Users\username, щелкнул правой кнопкой мыши папку Документы и выбрал Свойства . Затем я перешел на вкладку Безопасность .

Как видите, учетная запись пользователя Aseem была явно добавлена ​​и получила разрешение Полный доступ . Теперь вам нужно сделать то же самое для папки, в которой находится скрипт, и для самого скрипта. Не думайте, что если вы дадите разрешения на доступ к папке, содержащей скрипт, все будет в порядке, потому что это не так. Наконец, установите разрешения для всех файлов и папок, с которыми будет взаимодействовать скрипт.

В моем случае мне пришлось перейти в C:\test , щелкнуть правой кнопкой мыши эту папку и добавить туда свою учетную запись пользователя с разрешениями «Полный доступ». Это немного раздражает, но это единственный способ запустить скрипт.

Примечание . Учетная запись, которая используется для запуска сценария, должна входить в локальную группу Администраторы на компьютере. В моем случае учетная запись Aseem является учетной записью администратора и, следовательно, входит в группу локальных администраторов.

Шаг 2. Проверьте настройки планировщика задач

.

Теперь перейдем в Планировщик заданий и изменим там соответствующие настройки. Откройте Планировщик задач и найдите свою задачу в разделе Активные задачи . Их следует располагать в алфавитном порядке.

Дважды щелкните по нему, и задача откроется сама в том же окне. Чтобы отредактировать задачу, вам нужно щелкнуть по ней правой кнопкой мыши и выбрать Свойства .

Здесь есть несколько вкладок, и кое-что нужно проверить и изменить. Во-первых, на вкладке Общие вам необходимо проверить учетную запись пользователя, которая используется для запуска задачи. В моем случае это учетная запись Aseem , которой я ранее предоставил разрешения в файловой системе и которая является частью группы «Администраторы» на компьютере.

Далее вам нужно выбрать параметр Запускать независимо от того, вошел ли пользователь в систему или нет и выбрать Windows Vista, Windows Server 2008 в разделе Настроить для . сильная>коробка.

На вкладке Действия вам необходимо выбрать сценарий, нажать Изменить , а затем добавить путь к папке, содержащей сценарий в e. Начать с поля (необязательно) . Это может показаться излишним, но это не так. В моем случае я вставил в поле C:\Users\Aseem\Documents\ .

Теперь нажмите ОК , чтобы сохранить настройки. При этом может появиться диалоговое окно, в котором необходимо ввести пароль учетной записи пользователя, который будет запускать задачу. Это порождает еще одно требование. Вы не можете использовать учетную запись, у которой нет пароля. Для запуска задачи учетная запись пользователя должна иметь пароль.

Наконец, вам следует один раз запустить задачу вручную в планировщике задач, чтобы убедиться, что она запускается. Если после изменения всех настроек он работает нормально вручную, то он должен запускаться тогда, когда он должен быть запущен. В моем случае это должно было произойти при запуске, и после внесения изменений все заработало нормально.

Обратите внимание: если ваш сценарий при запуске обращается к разным компьютерам в домене, вам следует попытаться использовать учетную запись администратора домена для запуска задачи. Это обеспечит наличие у учетной записи достаточных разрешений для доступа к удаленным компьютерам.

Еще один момент, на который следует обратить внимание: если ваш скрипт обращается к ресурсам в общей сетевой папке. Если ваш скрипт использует буквы для доступа к сети, он может не запуститься. Например, вместо использования F:\data\ в скрипте следует использовать \\machinename\share_name\  . Если вам по-прежнему не удается запустить сценарий, оставьте комментарий здесь, и я постараюсь помочь. Наслаждайтесь!.

Похожие сообщения:


13.09.2017