Exchange 2010: Exchange Management Shell, часть II

Продолжение, часть I здесь.

Справка в любом нужном месте

Для Exchange 2010, отдел Microsoft Exchange User Education разработал набор документации, доступный как в Exchange Management Shell, так и в онлайне.

В Exchange Management Shell вы сможете ощутить всю ценность командлетов типа Get-Help в процессе работы и изучения. Поглядывайте также и в онлайновую версию справки. Она включает в себя описание всех возможностей Exchange и их применения в PowerShell.

Help in the Shell
Exchange Management Shell, командлет Get-Help используется для получения оглавления справочника по командам и форматам. Он может также пригодиться при выяснении параметров той или иной команды PowerShell

Для получения сведений об определенном командлете, впишите Get-Help и интересующий вас командлет, например Get-Help Get-SystemMessage. По умолчанию, справка Shell отображает целевой командлет, его описание и синтаксис.

Можно контролировать детальность информации, выдаваемой справкой, с помощью параметров -Detailed, -Full и -Example. Они просто приставляются в конец команды. Например Get-Help -Full возвращает все секции Help. Пробуйте сами с любой командой, сравнивайте результаты.

Если необходимо получить информацию об определенном параметре или параметрах командлета, можно использовать ключ -Parameters в справке. Например, если нужно получить список параметров, называющихся как-то типа “quota”, к командлету Set-Mailbox – впишите Get-Help Set-Mailbox -Parameter *quota*.

Раздел Getting Help онлайн справки Exchange Server 2010 перечисляет все роли, конпоненты и значения функций.

Отображение команд Shell в консоли EMC

Каждый раз, когда вы обновляете консоль, или изменяете объекты вроде почтовых ящиков — консоль Exchange Management Console исполняет команды PowerShell. EMC в Exchange 2010 имеет парочку новых функций, такие например как отображение конкретных команд, исполняемых вами в GUI.

Журналы Windows PowerShell Command Log фиксируют каждую команду Shell исполняемую при работе в консоли EMC. Журнал можно включить в любой момент после открытия EMC. Он остается открытым и продолжает фиксировать команды, пока вы не остановите запись, или не закроете EMC. Остается не забывать стартовать журнал, каждый раз, когда вам понадобятся записи действий EMC.

Журнал содержит следующую информацию о каждой записанной команде:
Start Execution Time : Время начала исполнения команды Exchange Management Shell.
End Execution Time : Время окончания исполнения команды.
Execution Status : Результат выполнения команды.
Command : Собственно сама команда, полностью – командлет, параметры и значения.

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

Журнал можно сохранить в отдельный файл, или скопировать отдельные команды в буфер, или Exchange Management Shell для запуска.


Журнал Windows PowerShell Command Log

Команду Exchange Management Shell можно отобразить теперь и при изменениях свойств объектов. Для этого необходимо кликнуть значок после изменения каких-либо значений в Свойствах объекта. Открывшееся окно отобразит команду Exchange Management Shell со всеми нужными параметрами и значениями, как если бы вы выполняли ее самостоятельно в Shell. Полученную команду можно скопировать и сохранить, или запустить в Exchange Management Shell собственноручно.

В конечном итоге, все мастера консоли EMC выполняют команды EMS относительно тех или иных объектов Exchange. Теперь, в Exchange 2010 консоль стала еще более информативна, чем ранее, и отображает Shell команды практически везде. Это упрощает их запоминание, расширяет вашу памятку команд, и позволяет найти готовую или полуготовую командную конструкцию для дальнейшей автоматизации.

Форматирование вывода команд

По умолчанию, когда команда выдает результат на экран, Shell отображает неполный набор имеющихся свойств для каждого объекта. А почему? А потому, что многие объекты могут содержать десятки свойств, и Shell оптимизирует их отображение, выдавая в первую очередь только наиболее часто используемые значения. Однако, вы можете легко получить все или любые выбранные параметры объекта, применяя после самой команды ключи форматирования
| Format-List“, он же “| fl“, он же “| list“,
| Format-Table“, “| ft“, “| table” или
| Format-Wide“, “| fw“, “| wide“.

| Format-List” и “| Format-Table” являются наиболее популярными форматами отображения, так что давайте взглянем на них чуть подробнее.

| Format-List получает данные от команды по pipeline – “|“, и форматирует данные в виде списка всех свойств выбранного объекта. Можно указать, какие именно свойства вы хотите перечислить, используя ключ -Property. Если вы вызываете формат | Format-List без каких либо особенных заявленных свойств – выдаются все. | Format-List переносит строки, вместо их обрезки, как это делает | Format-Table по умолчанию. Одно из наиболее полезных применений | Format-List – это когда вы хотите детализировать выборку запрашиваемых параметров объекта в дальнейшей работе. Наример:
Get-DistributionGroup | Format-List Name, *OnlyFrom, PrimarySmtpAddress, *Size*

| Format-Table позволяет вам отобразить перечень объектов в виде таблицы, с именоваными заголовками колонок данных. По умолчанию, большинство из командлетов, такие как Get-Mailbox или Get-JournalRule используют именно табличный формат вывода данных. Среди прочих параметров форматирования в | Format-Table имеются -Properties и -GroupBy. Здесь они работают также как и в | Format-List. Для отображения длинных строк данных полностью, вместо обрезки их по умолчанию, в | Format-Table используется параметр “-Wrap“, как например:
Get-Mailbox -Database Research | Format-Table Name, ProhibitSendQuota, Database -Wrap

Часто можно также применять символ “*” с частью имени, как для | Format-List, так и для | Format-Table. При использовании символа “*“, можно получить множественные результаты, а не выписывать каждое свойсво отдельно. Например:
Get-Mailbox | Format-List Email*
— возвращает все свойства, с названиями начинающимися на Email.

Вот такие новшества органов управления Exchange, вкратце. Дальше будет больше.

One thought on “Exchange 2010: Exchange Management Shell, часть II”

  1. Максим, здравствуйте

    Когда-то проходил у вас курсы по Exchange 2007 😉

    В этой статье упоминается использование Справки, а так же упоминается одна из распространенных команд Get-MailboxDatabase. У меня как раз возник вопрос по синтаксису этой команды:
    Как указано в описании этой каманды (http://technet.microsoft.com/ru-ru/library/bb124924.aspx), в параметре -Identity можно использовать значение “имя сервераимя базы данных”. Там же в примере приводится следующая запись:

    Get-MailboxDatabase -Identity Server01StorageGroup01MailboxDatabase01 -Status | Format-List

    В англоязычной статье тоже самое, как и в справке, выдаваемой PowerShell.

    Собственно вопросы:
    1) что значит StorageGroup1 в примере, когда понятие StorageGroup в Exchange 2010 нету?

    2) как мне все-таки выполнить этот камандлет для базы MDB1 на среврере Server1 именно через -Identity (без использования -Server)? Запись типа serverdatabase выдает ошибку о не правильном типе значения параметра.

    Это относится так же к другим камандлетам, где используется схожая комбинация указания значения параметра (например камандлет New-MoveRequest параметр -TargetDatabase.

    Спасибо.

Leave a Reply

Your email address will not be published.