Задания для самостоятельного изучения
Из приведённого в методичке списка выбрать три командлета, изучить возможности их применения и привести примеры использования. При желании можно выбрать любые другие командлеты, примеры работы которых не рассмотрены в методических указаниях.
Результаты зафиксировать на скриншотах.
Вариант №9
Номер первого командлета: 9
Get-History – возвращает список команд, введенных в ходе текущей сессии.
Синтаксис:
Get-History [[-Id] <Int64[]>] [[-Count] <Int32>] [<CommonParameters>]
Описание:
Командлет Get-History получает историю сеанса, то есть список команд, введенных во время текущего сеанса.
PowerShell автоматически ведет историю каждого сеанса. Количество записей в истории сеансов определяется значением переменной предпочтения $MaximumHistoryCount. Начиная с Windows PowerShell 3.0, значение по умолчанию равно 4096. По умолчанию файлы истории сохраняются в домашнем каталоге, но вы можете сохранить файл в любом месте.
История сеансов управляется отдельно от истории, поддерживаемой модулем PSReadline. Обе истории доступны в сеансах, где загружается PSReadline. Этот командлет работает только с историей сеансов.
Примеры использования:
Пример 1: Получение истории сеансов
В этом примере отображаются записи в истории сеансов. На дисплее по умолчанию отображается каждая команда и ее идентификатор, который указывает порядок, в котором они выполнялись (рис.20).
> Get-History
Рисунок 20 – Пример выполнения команды Get-History
Пример 2: Отображение самой последней команды
В этом примере отображается последняя команда в истории команд. Последняя команда — это самая последняя введенная команда. Эта команда использует параметр Count для отображения только одной команды (рис.21). По умолчанию Get-History получает самые последние команды. Эта команда может быть сокращена до "h -c 1" и эквивалентна нажатию клавиши со стрелкой вверх.
> Get-History -Count 1
Рисунок 21 – Пример выполнения команды Get-History -Count 1
Пример 3: Отображение всех свойств записей в истории
В этом примере отображаются все свойства записей в истории сеансов. Оператор конвейера передает результаты команды Get-History командлету Format-List, который отображает все свойства каждой записи журнала. Это включает в себя идентификатор, статус, а также время начала и окончания команды.
> Get-History | Format-List -Property *
Рисунок 22 – Пример выполнения команды Get-History | Format-List -Property *
Номер второго командлета: 12
Get-WindowsFeature – выводит сведения о доступных ролях и компонентах сервера;
Синтаксис:
Get-WindowsFeature [[-Name] <String[]>] [-Vhd <String>] [-ComputerName <String>] [-Credential <PSCredential>] [-LogPath <String>] [<CommonParameters>]
Описание:
Командлет Get-WindowsFeature получает информацию о функциях, которые доступны для установки и уже установлены на компьютере под управлением Windows Server или на автономном виртуальном жестком диске (VHD) под управлением Windows Server.
Примеры использования:
Пример 1: Вывод списка всех установленных ролей и функций Windows Server.
Если запустить командлет Get-WindowsFeature без параметров, то отобразится список всех доступных ролей и компонентов Windows Server
> Get-WindowsFeature
Рисунок 23 – Пример выполнения команды Get-WindowsFeature
Пример 2: Вывод списка установленных веб-компонентов роли IIS
Если не известно точное имя роли, можно использовать подстановочные знаки. Например, чтобы проверить, какие веб-компоненты роли IIS установлены, выполним следующую команду (рис.24):
> Get-WindowsFeature -Name web-* | Where installed
Рисунок 24 – Пример выполнения команды Get-WindowsFeature -Name web-* | Where installed
Номер третьего командлета: 21
Start-Process – запускает один или несколько процессов на компьютере;
Синтаксис:
Start-Process [-FilePath] <String> [[-ArgumentList] <String[]>] [-Credential <PSCredential>] [-WorkingDirectory <String>] [-LoadUserProfile] [-NoNewWindow] [-PassThru] [-RedirectStandardError <String>] [-RedirectStandardInput <String>] [-RedirectStandardOutput <String>] [-WindowStyle <ProcessWindowStyle>] [-Wait] [-UseNewEnvironment] [-WhatIf] [-Confirm] [<CommonParameters>]
Описание:
Командлет Start-Process запускает один или несколько процессов на локальном компьютере. По умолчанию Start-Process создает новый процесс, который наследует все переменные среды, определенные в текущем процессе.
Чтобы указать программу, которая запускается в процессе, введите исполняемый файл или файл сценария, или файл, который можно открыть с помощью программы на компьютере. Если вы укажете неисполняемый файл, Start-Process запустит программу, связанную с файлом, аналогично командлету Invoke-Item.
Вы можете использовать параметры запуска процесса для указания параметров, таких как загрузка профиля пользователя, запуск процесса в новом окне или использование альтернативных учетных данных.
Примеры использования:
Пример 1. Запустите процесс, который использует значения по умолчанию
В этом примере запускается процесс, который использует Sort.exe файл в текущей папке. Команда использует все значения по умолчанию, включая стиль окна по умолчанию, рабочую папку и учетные данные (рис.25).
> Start-Process -FilePath "sort.exe"
Рисунок 25 – Пример выполнения команды Start-Process -FilePath "sort.exe"
Пример 2: Печать текстового файла
В этом примере запускается процесс, который печатает F:\ test.txt файл (рис.26).
> Start-Process -FilePath "test.txt" -WorkingDirectory "F:\" -Verb Print
Рисунок 26 – Пример выполнения команды Start-Process -FilePath "test.txt" -WorkingDirectory "F:\" -Verb Print
Пример 3: Запуск процесса в развернутом окне
Этот пример запускает Notepad.exe процесс. Он разворачивает окно и сохраняет его до завершения процесса.
> Start-Process -FilePath "notepad" -Wait -WindowStyle Maximized
Рисунок 27 – Пример выполнения команды Start-Process -FilePath "notepad" -Wait -WindowStyle Maximized
Пример 4. Запуск PowerShell от имени администратора
В этом примере PowerShell запускается с помощью параметра Запуск от имени администратора (Run as administrator > RunAs) (рис.28).
> Start-Process -FilePath "powershell" -Verb RunAs
Рисунок 28 – Пример выполнения команды Start-Process -FilePath "powershell" -Verb RunAs