ТОП 10:

Командная оболочка Windows PowerShell



Windows PowerShell— расширяемое средство автоматизации от Microsoft, состоящее из оболочки с интерфейсом командной строки и сопутствующего языка сценариев. Впервые публично язык был продемонстрирован на Профессиональной конференции разработчиков (англ. Professional Developers Conference, PDC) всентябре2003 годаподкодовымназванием Monad. Версия 1.0 выпущена в 2006 году и сейчас доступна для Windows XP с пакетом обновления 2—3, Windows Server 2003, Windows Vista, и встроена в Windows Server 2008 как необязательный компонент.

 

Рисунок 17 Интерфейс командной строки Windows PowerShell 2.0

Windows PowerShell 2.0 был выпущен в составе Windows 7 и Windows Server 2008 R2 как неотъемлемый компонент системы.

Windows PowerShell включает свою собственную расширяемую справку, доступную (в том числе из командной строки) через командлетGet-Help.

Неполный список новых возможностей, включённых в PowerShell 2.0:

· PowerShellRemoting. Используя WS-Management, PowerShell 2.0 позволяет вызывать сценарии и командлеты на удалённых машинах (в том числе и на нескольких одновременно), отслеживать состояние их выполнения и получать результаты в виде объектов (через сериализацию-десериализацию). Также возможно устанавливать интерактивные сессии и сессии с ограниченной функциональностью.

  • Фоновые работы. Возможность вызывать последовательности команд асинхронно. Работы можно запускать на локальной машине или на нескольких удалённых машинах. Работы не могут использовать интерактивные командлеты.
  • Транзакции. Позволяют разработчикам командлетов и поставщиков реализовывать транзакционные операции. PowerShell 2.0 включает командлеты для инициализации, подтверждения и отката транзакций и возможности для управления транзакциями и использования их в командлетах и поставщиках.
  • AdvancedFunctions. Возможность разрабатывать полноценные командлеты, используя только сам PowerShell.
  • SteppablePipelines. Позволяет пользователю контролировать вызов функций BeginProcessing(), ProcessRecord() и EndProcessing() при вызове командлета.
  • Модули. Позволяют авторам сценариев и администраторам организовывать сценарии PowerShell и помещать их в самодостаточные модули. Код из модуля выполняется в своем собственном, независимом контексте и не влияет на окружение вне модуля. Используя сценарий, модули могут объявлять ограниченное окружение. Модули могут содержать публичные и приватные функции и переменные.
  • Язык данных. Подмножество языка PowerShell, которое позволяет отделять определения данных от исполняемого кода сценариев и даёт возможность импортировать в сценарий локализованные строки в процессе выполнения.
  • Отладка сценариев. Возможность устанавливать точки прерывания (англ. breakpoints) в сценариях или функциях PowerShell. Точки прерывания могут быть установлены на строки, столбцы, команды или операции чтения и/или записи переменных. Присутствуют командлеты для установки и контроля точек прерывания в сценариях.
  • Eventing (событирование). Эта возможность позволяет слушать, перенаправлять, и выполнять действия при возникновении событий управления или системы. Благодаря событированию хосты PowerShell могут быть оповещены о изменениях состояния в управляемых объектах. Также позволяет сценариям подписываться на ObjectEvents, PSEvents и WmiEvents и обрабатывать их синхронно и асинхронно.
  • Windows PowerShell Integrated Scripting Environment (ISE). PowerShell 2.0 включает графическую оболочку для языка, в которую входят встроенный отладчик, подсветка синтаксиса, автозавершение команд. Оболочка позволяет запускать несколько независимых консолейPowerShell с полной поддержкой Юникода в интерфейсе с закладками. Благодаря поддержке удалённого выполнения некоторые консоли могут выполняться и на других компьютерах. Кроме того, ISE позволяет выполнять только выделенные части сценариев, содержит встроенный редактор и позволяет расширять и дополнять свой интерфейс с помощью PowerShell.
  • BITS Transfer — встроенная поддержка передачи файлов по сети с приоритизацией, многопоточностью, возобновлением и асинхронной работой на основе технологии BackgroundIntelligentTransferService.
  • Множество новых командлетов, включая, например, Out-GridView, позволяющий вывести результаты конвейера в графическую таблицу (на основе WPF), с возможностями сортировки и мгновенного поиска.
  • Новые операторы -Split, -Join и оператор подстановки (@).
  • Обработкаошибокс Try-Catch-Finally. В отличие от других .NET языков, в PowerShell можно указывать несколько типов исключений для одного блока catch.
  • Блочные комментарии. PowerShell 2.0 поддерживает блочные комментарии с использованием <# и #> в качестве ограничителей.
  • Новые API добавили разные возможности, от большего контроля над парсеромPowerShell до способности создавать ограниченные сессии (англ. restrictedrunspace), в которых можно выполнять лишь ограниченный набор инструкций и команд PowerShell.

 

Таблица 47 Сравнение командлетов с аналогичными командами

 

Windows PowerShell (Cmdlet) Windows PowerShell (Alias) cmd.exe / COMMAND.COM (MS-DOS, Windows, OS/2, etc.) Bash (Unix, BSD, Linux, Mac OS X ит. п.) Описание
Get-Location gl, pwd cd pwd Отображает текущий рабочий каталог
Set-Location sl, cd, chdir cd, chdir cd Меняет текущий каталог
Clear-Host cls, clear cls clear Очищает экран
Copy-Item cpi, copy, cp copy cp Копирует один или несколько файлов или дерево директорий (в PowerShell также можно копировать объекты других поставщиков данных)
Get-Help help, man help man Справка по командам
Remove-Item ri, del, erase, rmdir, rd, rm del, erase, rmdir, rd rm, rmdir Удаляет файл/каталог (или другой элемент в поставщиках данных PowerShell).
Rename-Item rni, ren ren, rename mv Переименовывает файл/каталог
Move-Item mi, move, mv move mv Перемещает файл/каталог в новое местоположение
Get-ChildItem gci, dir, ls dir ls Выводит все файлы/каталоги в текущем каталоге
Write-Output echo, write echo echo Выводит строки, переменные на стандартный вывод
Pop-Location popd popd popd Изменяет текущий каталог на тот, который был последним помещён в стек
Push-Location pushd pushd pushd Помещает текущий каталог в стек
Set-Variable sv, set set set Установка значения переменной/создание переменной
Get-Content gc, type, cat type cat Получает содержимое файла
Select-String   find, findstr grep Выводит строки, подходящие под условие
Get-Process gps, ps tlist,[5]tasklist[6] ps Выводит все запущенные процессы
Stop-Process spps, kill kill,[5]taskkill[6] kill Останавливает запущенный процесс
Tee-Object tee n/a tee Передаёт входные данные в файл или переменную, затем передаёт их дальше по конвейеру

 

3 Задание к работе:

3.1 Мониторинг и диагностика в командной строке

3.1.1 Запустите командную строку cmd.

3.1.2 Создайте на вашем диске каталог SYSTEM.

3.1.3 Как узнать, с какой версией операционной системы работает данный компьютер?

3.1.4 Запишите информацию обо всех компонентах системы с полной расшифровкой в каталог SYSTEM в файл info.txt

3.1.5 Просмотрите содержимое файла постранично командной cmd

3.1.6 Введите в командной строке calcдля запуска программы Калькулятор.

3.1.7 Запишите в файл tasklist.txtинформацию о всех запущенных процессах.

3.1.8 Откройте файл tasklist.txtсредствами Блокнотв командной строке (подсказка: для запуска программы используйте команду notepad)

3.1.9 Найдите PID запущенных процессов и запишите в тетрадь.

3.1.10 Закройте приложение calc.exe с помощью команды taskkill

3.1.11 Аналогично закройте программу Блокнот

3.2 Просмотр использования ресурсов с помощью диспетчера задач Windows

3.2.1 Вызовите контекстное меню панели задач и выберите команду Диспетчер задач

3.2.2 Перейдите на вкладку Быстродействие и дважды щёлкните мышью на графике Загрузка ЦП

3.2.3 Чтобы восстановить Диспетчер задач выполните двойной щелчок внутри графиков.

3.2.4 Откройте Панель управления. Переключитесь в классический вид. Выберите АдминистрированиеПроизводительность.

3.2.5 Выберите раздел Системный монитор.

3.2.6 Чтобы удалить существующие счётчики производительности, нажмите на красный крестик Х на панели инструментов.

3.2.7 Нажмите на "+" для добавления счётчика, выберите локальны компьютер.

3.2.8 Выберите счётчик Процессор. В списке выберите % загруженности процессора и нажмите флажок для отображения описания. Прочитайте описание.

3.2.9 Добавьте выбранный счётчик.

3.2.10 Аналогично добавьте следующие счётчики:

Таблица 48 Счётчики производительности

Объект производительности Счётчик
Память Доступно байт
Физический диск % активности диска при записи
Сетевой интерфейс Всего байт/сек

3.2.11 Не закрывайте окна Диспетчер задач и консоль Мониторинг надёжности и производительности

3.3 Архивирование данных. Просмотр статистики производительности

3.3.1 Запустите программу 7zip. Заархивируйте содержимое вашего домашнего каталога. Уровень сжатия – максимальный, архив – непрерывный. Защитите данный архив паролем. Файлы архива зашифруйте.

3.3.2 Быстро переключитесь в окно Мониторинг надёжности и производительности.

3.3.3 В панели счётчиков выделите % активности диска при записи.

3.3.4 Проанализируйте изменение счётчика.

3.4 Настройка файла подкачки

3.4.1 Вызовите контекстное меню объекта Компьютер и выберите Дополнительные параметры системы.

3.4.2 На вкладке Дополнительно в области Быстродействиенажмите на кнопку Параметры.

3.4.3 В окне Параметры быстродействия перейдите на вкладку Дополнительно и нажмите на кнопку Изменить.

3.4.4 Проверьте, что в списке дисков выбран диск С:\

3.4.5 Выберите Без файла подкачки и щёлкните по кнопке Задать.

3.4.6 В списке дисков выберите диск E:\ В текстовом поле Исходный размер введите 1024 Мб и в текстовом поле Максимальный размертакжевведите 1024.

3.5 Инвентаризация и диагностика средствами POWERSHELL

3.5.1 Запустите командную строку POWERSHELL(Пуск – Программы – Стандартные – WindowsPowerShell).

3.5.2 Перейдите в ваш каталог

3.5.3 Запустите командную строку cmd. Выполните команду get-processcmd. Запишите свойства: Name, Handles, ID.

3.5.4 Остановите запущенный процесс cmd с помощью команды оболочки.

3.5.5 Выполните команду оболочки Get-HotFixдля получения сведений о пакетах обновлениях и исправлениях, установленных на заданном компьютере. Полученную информацию запишите в файл config_system.txtна вашем диске в каталог SYSTEM

3.5.6 Выполните команды. Для чего предназначены данные команды?

· $env:computername

· $env:username

· $env:userdomain

· get-date

3.5.7 Выполните команду get-alias для того, чтобы узнать псевдонимы командлетов. Это альтернативные имена, которые проще вводить в командной строке POWERSHELL.

3.5.8 По псевдониму найдите командлет:

· Dell

· Fc

· Gi

· Man

· Pwd

3.5.9 Выполните команду gwmiдля получения сведений о конфигурации операционной системы с параметром classWin32_OperatingSystem. Какие сведения можно узнать с помощью данной команды?

3.5.10 Выполнитекомандуget-wmiobjectспараметрами class win32_ (bios, physicalmemory,processor, diskdrive, systemdriver). Выберите из списка, предложенного ниже назначения команд:

· проверка жёсткого диска и разделов

· для проверки версии и состояния микропрограммы BIOS. Какие сведения можно узнать с помощью данной команды?

· размер ОЗУ на компьютере

· тип процессора

· проверка RAID-контроллера компьютера

3.5.11 Результаты выполнения вышеперечисленных команд запишите в файл wmiobject.txt в каталог SYSTEM

3.6 Управление дисками, каталогами и файлами в PowerShell

3.6.1 КомандлетGet-PSDrive позволяет просматривать доступные в данный момент диски.

3.6.2 Перейдите на диск E:

3.6.3 Создайте подкаталог PowerShell.

3.6.4 Перейдите в каталог PowerShell, который вы создали ранее. С помощью какого командлета вы это сделали?

3.6.5 Создайте файл Drive.txt. Откройте данный файл средствами программы notepad. Запишите в файл информацию о доступных в данный момент дисках.

Для создания файла или каталога используйте команду new-item –type [directory | File] –path.

3.6.6 Скопируйте в каталог PowerShell, файл config_system.txtс помощью командлета.

3.6.7 Переместите файл wmiobject.txt в каталог PowerShell с помощью командлета.

3.6.8 Переименуйте файл config_system.txtна system.txt

3.6.9 Удалите файл config_system.txtв каталоге SYSTEM.

3.6.10 Выведите на экран содержимое файла system.txt с помощью командлета.

3.6.11 Допишите в файл версию вашей операционной системы с помощью командлета.

4 Содержаниеотчёта:

4.1 Файлыinfo.txt, tasklist.txt, config_system.txt,wmiobject.txtвкаталогеSYSTEM

4.2 Заполнитеотчётнуютаблицу:

Таблица 49 Отчётная таблица

Названиеоболочки Операционная система Способ запуска
     
     
     

4.3 Запишите в тетради назначение всех используемых вами на занятии команд оболочки POWERSHELL

5 Контрольные вопросы:

5.1 Команды мониторинга и диагностики в командной строке

5.2 Диспетчер задач. Способы вызова.

5.3 Командная оболочка Windows PowerShell. Назначение.

5.4 Как просмотреть статистику производительность операционной системы.

 

 







Последнее изменение этой страницы: 2017-02-06; Нарушение авторского права страницы

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 34.231.21.160 (0.01 с.)