Функции PowerShell

Содержание

Слайд 2

Функции

Блок кода на языке PowerShell, имеющий название и находящийся в памяти до

Функции Блок кода на языке PowerShell, имеющий название и находящийся в памяти
завершения текущего сеанса командной оболочки
Анализ синтаксиса функции производится только один раз, при ее объявлении (при повторном запуске функции подобный анализ не производится)

Слайд 3

Функция

Функция – набор команд, имеющее название и находящееся в памяти до завершения

Функция Функция – набор команд, имеющее название и находящееся в памяти до
текущего сеанса.
function имя_функции
{
тело_функции
}

Слайд 4

Функция

Вызов функции:
имя_функции

Функция Вызов функции: имя_функции

Слайд 5

Функция

Пример:
Написать функцию, которая приветсвует пользователя.
function Hello{
“Добрый день!”
}
Вызов функции:
Hello

Функция Пример: Написать функцию, которая приветсвует пользователя. function Hello{ “Добрый день!” } Вызов функции: Hello

Слайд 6

Функция

Оператор ввода информации:
$переменная = Read-Host “сообщение”
На консоль выводится сообщение, а введенное значение

Функция Оператор ввода информации: $переменная = Read-Host “сообщение” На консоль выводится сообщение,
помещается в $переменная .
Пример:
$a_1 = Read-Host “Введите строку”
$a_1

Слайд 7

Использование переменных

ЗАДАНИЕ
Изменить функцию Hello, чтобы она запрашивала у пользователя его имя и

Использование переменных ЗАДАНИЕ Изменить функцию Hello, чтобы она запрашивала у пользователя его
вводила:
Добрый день, имя_пользователя !!!

Слайд 8

Функция

Вывод списка функции:
dir Function:
Вывод содержимого функции:
type Function:имя_функции
Пример:
type Function:Hello

Функция Вывод списка функции: dir Function: Вывод содержимого функции: type Function:имя_функции Пример: type Function:Hello

Слайд 9

Использование переменных

ЗАДАНИЕ
Написать функцию:
Узнает имя пользователя и приветствует его.
Ввести числовое значения двух переменных.
Вывести

Использование переменных ЗАДАНИЕ Написать функцию: Узнает имя пользователя и приветствует его. Ввести
на консоль результат деления первого числа на второе.

Слайд 10

Использование переменных

ЗАДАНИЕ
Написать функцию:
Узнает имя пользователя и приветствует его.
Ввести числовое значения двух переменных.
Вывести

Использование переменных ЗАДАНИЕ Написать функцию: Узнает имя пользователя и приветствует его. Ввести
в файл строку:
число_1 / число_2 = результат_деления

Слайд 11

Использование переменных

ЗАДАНИЕ
Написать функцию:
Узнает имя пользователя и приветствует его.
Ввести числовое значения двух переменных.
Вывести

Использование переменных ЗАДАНИЕ Написать функцию: Узнает имя пользователя и приветствует его. Ввести
в файл шесть строк показывающие все операции сравнения с этими числами:
число_1 оп_ср число_2 = результат_сравнения
Например:
15 -eq 25 = True

Слайд 12

Использование переменных

В процессе работы в среде PowerShell можно вместо значений подставлять «шаблон».

Использование переменных В процессе работы в среде PowerShell можно вместо значений подставлять
Предполагается, что «шаблон» заменяет все значения удовлетворяющие «шаблону».
Шаблон – это символьная строка, в которой присутствуют специальные символы:
* – любое количество (может быть нулевым) произвольных символов;
? – один произвольный символ.

Слайд 13

Использование переменных

Имеется операция «сравнения с шаблоном»:
-like
Пример:
$w1 = ‘*x*’
‘zxz’ -like $w1 истина
‘zzz’ -like $w1 ложно

Использование переменных Имеется операция «сравнения с шаблоном»: -like Пример: $w1 = ‘*x*’

Слайд 14

Использование переменных

ЗАДАНИЕ
Занести в переменную шаблон ’?a*’.
Сравнить с шаблоном следующие строки:
a, пустая строка,

Использование переменных ЗАДАНИЕ Занести в переменную шаблон ’?a*’. Сравнить с шаблоном следующие
ba, ab, abc, babc, 1avatar

Слайд 15

ЗАДАНИЕ
Создать текстовый файл на диске PS с расширением TXT. В этот файл

ЗАДАНИЕ Создать текстовый файл на диске PS с расширением TXT. В этот
вывести содержимое корневого каталога диска C:
Сохранить в переменной $ps_drive список дисков.
Записать в конец созданного в п.1 файла содержимое из переменной $ps_drive
Вывести на экран содержимое созданного файла.

Использование переменных

Слайд 16

Создайте каталог с именем PowerShell.
В каталоге PowerShell создайте несколько текстовых файлов и

Создайте каталог с именем PowerShell. В каталоге PowerShell создайте несколько текстовых файлов
поместите в них несколько строк.
Сохраните содержимое каталога PowerShell в переменной $ps_dir, а список дисков в переменной $ps_drive.
Выведите на экран содержимое переменных $ps_dir и $ps_drive.

Использование переменных

Слайд 17

ЗАДАНИЕ
Запустить программу Word: найти каталог, где расположен файл WinWord.exe и выполнить его.
Вывести

ЗАДАНИЕ Запустить программу Word: найти каталог, где расположен файл WinWord.exe и выполнить
на экран список выполняемых процессов (Get-Process) по маске имени, в которое входит слово word (* word *).
Остановить процесс WinWord (Stop-Process) по его идентификатору (id).

Слайд 18

Использование переменных

ЗАДАНИЕ
Вывести на экран список сервисов (Get-Sevice).
Посмотреть структуру объектов, описывающих сервисы (Get-Member).
Вывести

Использование переменных ЗАДАНИЕ Вывести на экран список сервисов (Get-Sevice). Посмотреть структуру объектов,
информацию о 15 сервисах, упорядочив её по названию сервисов (Sort-Object). В выводимой информации отразить имя сервиса, статус, DisplayName (Select-Object).
Повторить п.3 с следующим ограничением: вывести на экран список сервисов, имена которых начинается на букву ‘w’ (маска w*).

Слайд 19

Использование переменных

ЗАДАНИЕ
Вывести список всех выполняемых процессов. (Get-Process)
Вывести список всех выполняемых процессов,

Использование переменных ЗАДАНИЕ Вывести список всех выполняемых процессов. (Get-Process) Вывести список всех
упорядочив его по убыванию процессорного времени. (Sort-Object)

Слайд 20

Использование переменных

ЗАДАНИЕ
Вывести список 10 процессов, которые максимально используют время центрального процессора. (Get-Process)

Использование переменных ЗАДАНИЕ Вывести список 10 процессов, которые максимально используют время центрального

Занести этот список в переменную.(=)
Создать свою директорию.(New-Item) В ней создать файл в который записать содержимое из переменной п.2.(>)
Вывести на экран содержимое созданного файла.(type)

Слайд 21

Логические операции:

Логические операции:

Слайд 22

Использование переменных

ЗАДАНИЕ
Написать функцию:
Ввести числовое значения трех переменных.
Вывести в файл три строки показывающие

Использование переменных ЗАДАНИЕ Написать функцию: Ввести числовое значения трех переменных. Вывести в
следующие операции с этими числами:
число_1 < число_2 и число_2 < число_3 = результат
число_1 < число_2 или число_2 < число_3 = результат
не ( число_1 < число_3 ) = результат
Например:
15 < 25 и 25 < -5 = False

Слайд 23

Выбор свойств объекта

Результат работы командлеты ‒ последовательность объектов.
Командлета Where-Object ‒ выполняет перебор

Выбор свойств объекта Результат работы командлеты ‒ последовательность объектов. Командлета Where-Object ‒
объектов из входного потока и проверку на заданное условие. Результатом будет последовательность объектов входного потока, которые удовлетворяют заданному условию.
В условии указывается очередной объект ($_ ) и через точку, свойство объекта, которое будет проверяться.

Слайд 24

Выбор свойств объекта

Фильтрация объектов по условия:
Where-Object { логическое_условие }
Пример:
dir | Where-Object {

Выбор свойств объекта Фильтрация объектов по условия: Where-Object { логическое_условие } Пример:
$_.PSIsContainer }
dir | Where-Object { -not $_.PSIsContainer }
где $_ ‒ указывает на очередной объект входного потока;
PSIsContainer ‒ свойство объекта.

Слайд 25

Использование переменных

ЗАДАНИЕ
Вывести список всех сервисов (Get-Service).
Используя Where-Object вывести сервисы, которые остановлены.

Использование переменных ЗАДАНИЕ Вывести список всех сервисов (Get-Service). Используя Where-Object вывести сервисы, которые остановлены.

Слайд 26

Использование переменных

ЗАДАНИЕ
Создать свой каталог с именем PowerShell.
Найти каталог, в котором имеются и

Использование переменных ЗАДАНИЕ Создать свой каталог с именем PowerShell. Найти каталог, в
подкаталоги и файлы.
Вывести в файл в каталоге PowerShell список всех подкаталогов из п.2.(dir, >, where)
В конец этого файла добавить список всех файлов из п.2. (dir, >, where)
Содержимое созданного файла вывести на экран. (type)

Слайд 28

Format-Table
Работа с историей

Format-Table Работа с историей

Слайд 29

-Match – сравнение по регулярному выражению
-Notmatch – не совпадает с регулярным

-Match – сравнение по регулярному выражению -Notmatch – не совпадает с регулярным выражением
выражением