Professional Documents
Culture Documents
438PowerShell
ББК 32.973.26-018.1
К68
Коробко И. В.
К68 PowerShell как средство автоматического администрирова-
ния. – М.: ДМК Пресс, 2012. – 224 с.
ISBN 978-5-94074-755-0
УДК004.438PowerShell
ББК 32.973.26-018.1
Все права защищены. Любая часть этой книги не может быть воспроиз-
ведена в какой бы то ни было форме и какими бы то ни было средствами без
письменного разрешения владельцев авторских прав.
Материал, изложенный в данной книге, многократно проверен. Но, по-
скольку вероятность технических ошибок все равно существует, издательство
не может гарантировать абсолютную точность и правильность приводимых
сведений. В связи с этим издательство не несет ответственности за возможные
ошибки, связанные с использованием книги.
Глава 1. У
Установка и настройка Windows PowerShell.... 14
Установка PowerShell..................................................................... 14
Среда разработки PowerShell ........................................................ 15
Панель Commands.................................................................... 16
Быстрое создание сценариев .................................................. 16
Усовершенствованная справка по командлетам....................... 18
Технология IntelliSense ............................................................. 18
Поддержка шаблонов сценариев.............................................. 19
Первый запуск PowerShell ............................................................. 20
Запуск сценариев PowerShell ........................................................ 20
Документация по PowerShell ......................................................... 21
Установка PowerShell
Для каждой версии операционной системы, каждой платформы
существует индивидуальная сборка оболочки PowerShell. Дополни-
тельно почти для каждой ее версии присутствует русификация либо
в виде локализованной версии, либо в виде отдельного многоязыко-
вого пакета (Multilingual User Interface – MUI). Подробно обо всех
возможных вариантах – в табл. 1.1.
Панель Commands
К трем панелям, имевшимся в предыдущей версии PowerShell, до-
бавилась вертикальная панель Commands, расположившаяся с пра-
вой стороны относительно трех ранее существовавших в предыду-
щей версии горизонтальных панелей. В ней отображается список
доступных командлетов, сгруппированных по модулям.
Непосредственно из самой панели с командлетами можно выпол-
нять следующие действия:
Run (запустить). Для большинства командлетов реализо-
вана возможность определения параметров запуска прямо
в этой панели. Обязательные параметры отмечены звездоч-
кой;
Insert (поместить). Помещает выбранный командлет в окно
консоли. Причины, по которым оно не помещается в панель,
где ранее был установлен курсор, или непосредственно в сце-
нарий, не понятны;
Copy (скопировать). Помещает командлет в буфер обмена.
Здесь же сосредоточены элементы управления отображения са-
мой панели.
Замечание
Все стандартные аргументы запуска командлетов, такие как Debug,
Error Action и др., сгруппированы в разделе Common Parameters.
18 Установка и настройка Windows PowerShell
Усовершенствованная справка
по командлетам
Кроме традиционного вызова справки с помощью командлета
get-help, в новой панели Commands появилась возможность опера-
тивного доступа к справочной информации, разработан интерфейс
для настройки выводимой информации.
Получить справку по интересующему вас командлету очень прос-
то. Выбрав из списка нужный командлет, необходимо нажать на
кнопку с вопросительным знаком (?) (рис. 1.3). Автоматически сге-
нерируется диалоговое окно, содержащее информацию, выводимую
командлетом, – get-help. Кроме того, в нем реализованы механизм
поиска данных в выведенной справке и возможность настройки вы-
вода данных. При нажатии на кнопку Settings появится диалоговое
окно, в котором можно определить список отображаемых разделов
справки и настройки системы поиска. По умолчанию отображаются
все секции справки.
Технология IntelliSense
Технология IntelliSense хорошо известна программистам по Mic-
rosoft Visual Studio. Сегодня она наконец-то появилась в Windows
PowerShell. Если в предыдущих версиях для быстрого ввода имени
Среда разработки PowerShell 19
Документация по PowerShell
Пакет документации можно скачать с официального сайта Micro-
soft со страницы Windows PowerShell 1.0 Documentation Pack (http://
p //
22 Установка и настройка Windows PowerShell
www.microsoft.com/downloads/details.aspx?familyid=B4720B00-
/ / p y
9A66-430F-BD56-EC48BFCA154F&displaylang=en).
p y g В комплект
входят четыре документа, краткое описание которых приведено
в табл. 1.2.
Виды объектов
В Active Directory поддерживаются несколько типов объектов,
каждый из которых имеет индивидуальный набор свойств. Для до-
ступа к каталогу используется провайдер LDAP. В табл. 2.2 пере-
числены характерные объекты Active Directory. Для совместимости
доменов, построенных на основе Windows NT и Windows 2k, Active
Directory обеспечивает доступ к некоторым объектам с помощью
провайдера WinNT.
Идентификация объектов 25
Идентификация объектов
Идентификация объектов в Active Directory осуществляется с по-
мощью массива ObjectClass, который представляет собой массив
строк. Однозначная идентификация объектов осуществляется по
последнему элементу массива. В табл. 2.3 приведена информация,
позволяющая однозначно идентифицировать объект: полный список
значений массива ObjectClass; значение, идентифицирующее объект
и префикс в каноническом имени объекта, используемом в Active
Directory.
26 Управление каталогом Active Directory
Создание объекта
Создание объекта – стандартная процедура для всех объектов
Active Directory. Для создания любого объекта необходимо опреде-
лить несколько параметров:
Тип объекта. Определяется значением последнего элемента
массива objectClass (табл. 2.1);
Местоположение объекта. Относительный составной путь
к контейнеру, в котором создается объект;
Имя объекта. В зависимости от типа объекта перед именем
указывается префикс. Во время создания объекта присвоен-
ное имя дублируется атрибутом name.
В листинге 2.5 приведен шаблон создания объекта в общем виде.
Создание объекта осуществляется с помощью метода Create(), кото-
Действия над объектами 31
Копирование объекта
Копирование объектов позволяет быстро создать объект на осно-
ве существующего, уменьшив затраты на администрирование и ко-
личество ошибок, связанных с влиянием человеческого фактора.
Копирование объекта по шаблону является производным дей-
ствием от создания объектов. После завершения процедуры созда-
ния объекта осуществляется копирование указанных свойств с су-
ществующего объекта. Атрибуты, значения которых необходимо
перенести с существующего объекта, указываются в массиве.
При создании объекта по шаблону с помощью мастера подразуме-
вается, что новый объект будет создан в том же контейнере, что и
шаблонный. Используя сценарий, путь может меняться как угодно.
В листинге 2.6 приведен пример создания нового объекта на основе