Как запустить пакетный файл из запланированного задания через агент SQL Server


12

Я пытаюсь запустить пакетный файл (Windows) из задания агента SQL Server под SQL Server 2008 R2. В рабочих шагах я создал новый шаг, установив его тип «Операционная система (CmdExec)». Сначала я попытался указать только имя командного файла в поле «Команда». Выдает ошибку, что не может найти файл.

Тогда я попробовал: cmd.exe c: \ test.bat

Это начинается, но никогда не завершается (и, похоже, все равно не работает).

Я попытался обернуть имя командного файла в кавычки: cmd.exe "C: \ test.bat", но это также не имеет никакого значения.

Какая магическая комбинация, чтобы заставить это работать?


Вы использовали полный путь, когда вы получили ошибку «файл не найден»? Является ли путь действительным на исполняющем сервере, а не только на вашей рабочей станции? Являются ли пути в пакетном файле абсолютными?
Джон на все руки

Да, я использую полный путь. Это правильный путь на сервере, на котором он запущен. Пакетный файл - не более чем простой тест: echo> C: \ temp \ itworks.txt
Пол Мрозовский,

Ответы:


11

Если память мне не изменяет

cmd.exe /c "c:\test.bat"

Кавычки необходимы, если в пути или имени файла есть пробелы


1

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

Удачи


0

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

Не забывайте, что когда вы запускаете его вручную, ваши учетные данные используются, но когда он запускается автоматически агентом SQL, используются учетные данные и разрешения агента.


0

только "c:\test.bat"сделаю работу


1
Привет, добро пожаловать на сайт. Хотя ваш ответ может быть полезен, обычно лучше включить некоторые дополнительные сведения о том, почему это будет работать, а команда в вопросе - нет.
Том V - попробуйте topanswers.xyz
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.