Зарегистрируйтесь для получения доступа к скачиванию
Дисциплина: Системное программное обеспечение
ВУЗ: Белорусский государственный университет информатики и радиоэлектроники
Специальность: Автоматизированные системы обработки информации
Проверили: А.В. Заяц, М.В. Прищепчик
Лабораторная работа №1 Системы программного обеспечения
Задание от М.В. Прищепчик:
1) Вывести список процессов:
A) с помощью командлета Get-Process;
Б) с помощью Win32_Process и с использованием командлетов Get-WmiObject и Format-List;
В) Сохранить результат в переменную $m и $n. На экран вывести количество процессов с помощью @($m).count и @($n).count сравнить результаты.
2) Включить какое-либо приложение, например, Сапер, и закрыть его с помощью с помощью Stop-Process.
3) Создать директорию на компьютере для сохранения данных с помощью New-Item.
4) Сохранить в созданной директории список установленных с помощью Windows Installer приложений в виде файла HTML и файла Excel.
5) Сохранить список имен установленных обновлений в Excel. На экран вывести список обновлений, которые начинаются на KB27 (например). На консоль вывести количество.
6) Вспомнить, что такое пинг. Проверить связь с соседним компьютером в аудитории с помощью класса Win32_PingStatus.
7) Вывести информацию о процессоре с помощью Win32_Processor. Объяснить что такое логический процессор.
8) Изучить информацию о компьютере с помощью класса Win32_ComputerSystem. Вывести структуру данного объекта.
9) Изучить информацию о ОС с помощью класса Win32_OperatingSystem. Вывести структуру данного объекта.
10) Получить сведения о дисковом пространстве и свободном месте на всех локальных дисках.
11) Получить данные о текущем местном времени. Сохранить в Word.
12) Вывести список переменных среды.
13) Изучить следующие материалы. Исследовать возможности использования класса Win32_Share.
14) Создания объекта журнала приложения. Вывести его содержимое в файл.
15) Создать на рабочем столе ярлык некоторого приложения с помощью WScript.Shell CreateShortcut.
16) Изучить что такое WMI и WSH.
17) Изучить что такое CIM-командлеты.
18) Создать в некоторой директории файл. Скопировать его в другую директорию, первоначальный файл удалить. Оформить в виде сценария. Запустить сценарий. Предварительно установив политику безопасности в RemoteSigned с помощью Set-ExecutionPolicy.
19) Запустить следующий сценарий в системе Windows PowerShell ISE.
20) Изучить следующие посты на Хабре.
Задание от А.В. Заяц:
A1: Сейчас ваша задача состоит в создании списка всех процессов и его сортировке в порядке убывания в соответствии с используемым временем процессора. Вы уже знаете, как это сделать: Get-Process, Sort-Object и конвейер (|). Подсказка: CPU не является параметром Sort-Object, это аргумент, который вы можете использовать при сортировке. Поэтому он не имеет символа «-».
A2: Создадим список первых 10 процессов по используемому времени процессора. Для этого возьмем результаты упражнения A1 и добавим к ним команду Select-Object. Существует два пути получить идеальное решение, в зависимости от того, как вы хотите отсортировать список. Давайте рассмотрим оба. Подсказка: в одном из путей используется параметр -First, в другом -Last.
Выполните задание согласно варианту: 1) Из отсортированного по названию процесса списка выберите 5 элементов от начала, пропустив первые 5 элементов списка.
A3: Назначьте переменной $P сокращенный список процессов из упражнения A2. Подсказка: С помощью клавиши курсора «Стрелка вверх» можно вызвать последнюю использованную команду, а с помощью клавиши «Home» переместить курсор в начало строки, а затем ввести данные. Вывести содержимое переменной можно, просто напечатав в командной строке $P.
A4: Возьмите переменную $P из упражнения A3 и сохраните ее содержимое в текстовый файл с именем «A4.txt». Затем сохраните содержимое $P в файл CSV с именем «A4.CSV», и наконец в файл XML с именем «A4.XML». Подсказка: при использовании > не нужен символ |, который требуется только для командлетов, таких как Out-File, Export-CSV и т.д. Просмотрите результат, для этого можно воспользоваться Блокнотом (Notepad).
Выполните задание согласно варианту: Выведите полученные данные на экран в виде таблицы.
A5: Создайте список всех служб и отсортируйте их по статусу. Подсказка: Используйте тот же метод, что и для сортировки процессов по используемому времени процессора, но применяйте команду get-service и «status» в качестве аргумента командлета Sort-Object.
A6: Создайте список служб и выведите на экран только атрибуты имени и статуса. Воспользуйтесь ранее описанным циклом ForEach, но можете подумать и о других возможных решениях. Выполните задание согласно варианту: Приведите альтернативное решение поставленной задачи используя полученные ранее сведения.
A7: Создайте список служб и выведите на экран только атрибуты имени и статуса, используя в качестве фона зеленый цвет, а в качестве цвета текста – белый. Подсказка: Воспользуйтесь решением из A6 и добавьте параметры -Foregroundcolor и -Backgroundcolor. Выполните задание согласно варианту: 1) Используйте следующие цвета: текст – серый, фон – белый.
A8: Вызовите список служб. Отсортируйте список по статусу и окрасьте выводимые данные в красный или зеленый цвет в зависимости от статуса службы «stopped» или «running». Подсказка: Сначала используйте Sort-Object, как в предыдущих упражнениях. Затем воспользуйтесь циклом Foreach, но вместо того, чтобы просто использовать Write-Host, добавьте запрос If. Вы можете просмотреть статусы служб, используя как обычно $_.status; возможные значения «stopped» или «running». Выполните задание согласно варианту: Для каждой службы выведите список служб, от которых зависит данная служба (использовать цикл foreach). Данный список служб содержится в одном из свойств (property) объекта службы. Воспользуйтесь командлетом get-member, чтобы выяснить в каком. Для полученных списков примените цвета из предыдущего упражнения.
A9: Преобразуем выходные данные Get-Service в HTML. Используем командлет Convertto-Html, который может работать непосредственно со списком объектов. Подсказка: Если список слишком длинный, его можно оборвать, нажав CTRL-C. Выполните задание согласно варианту: Примените к получаемым данным цветовую схему из упражнения А7 следующим образом: Цвет текста -> цвет текста статуса, цвет фона -> цвет текста названия. Для данной задачи воспользуйтесь циклом foreach. Полученные данные преобразуйте в HTML.
A10: В конце воспользуемся командами, которые, как мы знаем, помещают выходные данные в файл «.\A10.html». Просмотрим этот файл. Выполните задание согласно варианту: Результаты индивидуального задания из предыдущего упражнения сохраните в файл.