Я уже рассказывал как управлять (устанавливать, удалять, включать, отключать, получать список) транспортными агентами, используя Exchange Management Shell - http://blogs.technet.com/stas/archive/2008/03/07/exchange-management-shell.aspx#3251873
Иногда возникают вопросы, как это можно сделать не через Exchange Management Shell, а, например, обычного bat файла или шедулера
Небольшое вступление
PowerShell позиционируется как супер мега штука, которая позволяет администраторам легко управлять почти всем используя командную строку. Используя PowerShell, можно писать очень гибкие сценарии, в которых можно вызывать существующие команды, команды разработанные самостоятельно или другими компаниями, а так же напрямую обращаться к .NET Framework
Exchange Management Shell построен на базе PowerShell. Фактически это и есть PowerShell, в котором дополнительно загружены команды для управления Exchange.
Пример
Допустим у нас есть скрипт под Exchange Management Shell для установки транспортного агента:
Если мы хотим запустить этот скрипт из командной строки или из bat файла, то необходимо просто правильно сформировать команду. Для запуска обычного PowerShell скрипта можно использовать синтаксис
powershell “Путь к скрипту”.
Для того, чтобы наш экземпляр PowerShell мог получить доступ к командам Exchange необходимо добавить нужный параметр (полный список параметром можно посмотреть набрав powershell /?)
Итого у нас получается следующая команда:
powershell -PSConsoleFile "C:\Program Files\Microsoft\Exchange Server\Bin\ExShell.psc1" -Command "Путь к скрипту"