427.41K

PS2 Работа в powershell 2024 03

1.

1

2.

Параметры переключатели
и
выбирает из текущего каталога
только или список файлов (
), или
список директорий (
):
диск путь_ к_ каталогу
диск путь_ к_ каталогу
Пример:
2

3.

Ведение протокола работы в PowerShell:
имя_файла_с_протоколом
или дозапись в протокол:
имя_файла
Остановить ведение протокола:
3

4.

Конвейер командлет, это объединение
нескольких
командлет
путем
последовательного
перенаправления
выходного потока одной командлеты во
входной поток другой.
Комлт 1
Комлт 2
Комлт 3
4

5.

Конвейер
командлет,
обеспечивает
комбинированное действие командлетов
за счет передачи результата выполнения
первой командлеты на вход второй
командлеты.
Команлета 1
Команлета 2
5

6.

Конвейер командлет, записывается как
последовательность
командлет,
разделенных символом «вертикальная
черта».
6

7.

Информация
между
командлетами
конвейера, передается в виде объектов.
Команлета 1
Команлета 2
7

8.

1) Создать в рабочей директории ( ) подкаталог с
именем «№группы_Фамилия». (
)
2) Показать на экране, что такой каталог создан.
( )
8

9.

Объект это совокупность данных
(свойства объекта
) и способов
работы с этими данными (методы объекта
).
9

10.

10

11.

Информацию о структуре объекта можно
получить посредством командлеты:
Но на вход этой командлете обязательно
должен поступить объект. Это можно
выполнить через конвейер:
11

12.

Можно вывести описание только свойств
объекта (
) или описание только
методов объекта (
):
Пример:
12

13.

1) Вывести на экран все свойства объекта
(
)
который,
описывает
процессы,
выполняемые
на
компьютере (
).
2) Вывести на экран все методы (
)
работы с процессами.
3) Вывести на экран свойства процессов
и методы работы с ними.
13

14.

Вывод только указанных свойств объекта:
список_свойств_через_запятую
Сам объект поступает на командлету
через конвейер.
Пример:
14

15.

1) Найти директорию, где имеется достаточно
файлов (больше 8).
2) Вывести
содержимое
найденной
директории. Список выводимых свойств:
CreationTime, Name, Mode, Length.
15

16.

Упорядочивание
конвейера:
(сортировку)
элементов
список_свойств_через_запятую
Сортировка элементов конвейера в обратном
порядоке:
список_свойств
16

17.

или
Пример:
17

18.

1) Найти директорию, где имеется достаточно
файлов.
2) Вывести содержимое найденной директории.
Список выводимых свойств:
,
,
,
.
3) Вывести на экран информацию из п.2
упорядочив её по времени создания объекта
(
).
4) Вывести на экран информацию из п.2
упорядочив её по имени (
) в обратном
порядке (параметр
).
18

19.

Ограничить вывод количеством первых или
последних записей:
количество_первых
количество_последних
19

20.

Сохранить список всех программных
продуктов, установленных на компьютере,
в переменную
: (долго выполняется)
Посмотреть полученный список:
20

21.

1) Вывести
список,
установленного
на
компьютере ПО. Список выводимых свойств:
.
2) Упорядочить выводимую информацию по дате
инсталляции ПО (
) по убыванию
(параметр
).
3) Для п.2, только 5 последних установок.
4) Для п.3, добавить 3 самые ранние установки.
21

22.

или
Пример:
Посмотреть свойства и методы для
работы с процессами:

23.

1) Вывести список процессов (
).
2) Посмотреть свойства, описывающие процессы
(
)
3) Вывести только имя процесса, идентификатор
и процессное время.
4) Полученный список процессов упорядочить
по убыванию процессного времени.
5) Для п.4, показать 6 самых затратных
процессов (максимальное процессное время).
23

24.

Переменные используются для хранения
информации.
Временно
или
постоянно
(переменные Windows и PowerShell).
Имя переменной начинается со знака
(доллар), далее любой набор букв, цифр и знака
подчеркивания .
Переменные PowerShell, временные и
постоянные, хранятся на диске
.
24

25.

Присвоить значения переменной
операцией (знак «равно»):
можно
Вывод значения переменной на экран:
Вывести тип переменной на экран :
или через метод GetType():
25

26.

1) Занести произвольную текстовую строку в
переменную, имя которой начинается с
символа .
2) Создать директорию «№гр_Фамилия».
(
)
3) Вывести в файл (в созданной директории)
список всех переменных, начинающихся с
символа . (
с диска
)
4) Вывести на экран содержимое созданного
файла. (
)
26

27.

Справа от знак «равно» ( ) может стоять
выражение (арифметическое или строковое)
или командлета (конвейер командлет).
27

28.

Для следующих операции занести в файл:
1) Результат каждой операции.
2) После результата каждой операции записать
тип результата через
, а
потом через
3) Вывести на экран содержимое созданного
файла.
28

29.

При задании строки текста могут
использоваться одинарные ( ) или двойные
( ) кавычки.
При одинарных кавычках (
), текст
остается без изменений. А при двойных ( ) –
вместо переменных, расположенных в тексте,
подставляются их значения.
29

30.

Пример Использование одинарных ( ) или
двойных ( ) кавычек:
30

31.

1) В первую переменную поместить в
одинарных кавычках ( ) строку, в которой
помимо
текста
присутствуют
две
переменные.
2) Присвоить второй переменной числовое
значение, а третей – символьное значение.
3) Вывести на экран содержимое первой
переменной.
4) Повторить п.1 с двойными кавычками ( )
и п.3.
31

32.

Операции над строковыми значениями:
Операция
Описание
Пример
Результат
Объединение
строк
$w1 = ‘a’+’z’
‘az’
Повторение
строки
‘a’*3
‘aaa’
Добавление к
переменной
$w1 = ‘az ’
$w1 += ‘qw’
‘az qw’
Повторение
символьной
переменной
$w1 = ‘az ’
$w1 *= 3
‘az az az ’
32

33.

1) Поместить строку из 4 символов в
переменную
2) Повторить в переменной эту строку 3 раза.
3) Добавить в начало этой строки слово

’, а в конец – слово ‘
’.
4) Вывести на экран содержимое созданной
переменной.
33

34.

Для
определения
длины
используется свойство Length:
строки
Для получения символа из строки:
или
34

35.

Получение подстроки метод Substring:
Метод определения вхождения подстроки в
строку Contains. Результат True или False:
Метод IndexOf определяет номер символа
вхождения подстроки в строку :
35

36.

Операции сравнения:
Операция
Описание
Пример
Результат
Равно
3 -eq 3
True
Не равно
3 -ne 3
False
Меньше
1 -lt 3
True
Меньше или
равно
4 -le 3
False
Больше
4 -gt 3
True
Больше или
равно
1 -ge 3
False
36

37.

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

38.

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

39.

– набор команд, каждая
записывается на отдельной строке или
через символ «;».
39

40.

– набор команд, каждая
записывается на отдельной строке или
через символ «;».
Вызов функции:
40

41.

Пример:
Написать функцию, которая приветсвует
пользователя.
Вызов функции:
41

42.

Оператор ввода информации:
На консоль выводится
,
а
введенное значение помещается как строка
символов в
.
Пример:
42

43.

Изменить функцию
, чтобы она запрашивала у
пользователя его имя и выводила:
имя_пользователя
43

44.

Вывод списка функции:
Вывод содержимого функции:
Пример:
44

45.

Написать функцию:
1) Узнает имя пользователя и приветствует его
(реализовать через вызов функции
).
2) Ввести числовое значения двух переменных.
3) Вывести на консоль результат деления
первого числа на второе.
45

46.

Написать функцию:
1) Узнает имя пользователя и приветствует
его.
2) Ввести числовое значения двух переменных.
3) Вывести в файл строку:
3) Вывести в файл строку:
/
=
46

47.

Написать функцию:
1) Узнает имя пользователя и приветствует его.
2) Ввести числовое значения двух переменных.
3) Вывести в файл строку о номере задания и имени
пользователя и шесть строк показывающие все
операции сравнения с этими числами:
оп_ср
Например:
<
–>
–>
47

48.

Показать пример для символьного сравнения и
числового:
В этом случае:
’20’ –gt ‘-20’ => False
48

49.

Но если выполнить перевод из символьного в
числовой формат:
В этом случае:
20 -gt -20 => True
49

50.

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

51.

Операция «сравнения с шаблоном»:
Пример:
истина
ложно
51

52.

Операция проверки вхождения объекта в
список объектов:
Пример:
52

53.

1) Занести в переменную шаблон
.
2) Сравнить с шаблоном следующие строки:
a, пустая строка, ba, ab, abc, babc, 1avatar
53

54.

1) Создать текстовый файл на диске с
расширением
. В этот файл вывести
содержимое корневого каталога диска
2) Сохранить в переменной
список
дисков.
3) Записать в конец созданного в п.1 файла
содержимое из переменной
4) Вывести на экран содержимое созданного
файла.
54

55.

1) Создайте каталог с именем «№гр_Фамилия».
2) В созданном каталоге создайте несколько
текстовых файлов и поместите в них несколько
строк.
3) Сохраните содержимое созданного каталога в
переменной
, а список дисков в
переменной
.
4) Выведите на экран содержимое переменных
и
.
55

56.

1) Вывести на экран список выполняемых
процессов (
) по маске имени, в
которое входит слово
2) Запустить программу
: найти каталог, где
расположен файл
и выполнить его.
3) Вывести на экран список выполняемых
процессов (
) по маске имени, в
которое входит слово
(
).
4) Остановить процесс
(
)
по его идентификатору ( ).
56

57.

1) Вывести на экран список сервисов (
).
2) Посмотреть структуру объектов, описывающих
сервисы (
).
3) Вывести информацию о 15 сервисах, упорядочив её
по названию сервисов (
). В выводимой
информации
отразить
имя
сервиса,
статус,
(
).
4) Повторить п.3 с следующим ограничением: вывести
на экран список сервисов, имена которых начинается на
букву ‘ ’ (маска
).
57

58.

1) Вывести список всех выполняемых процессов.
(
)
2) Вывести список всех выполняемых процессов,
упорядочив его по убыванию процессорного
времени. (
)
58

59.

1) Вывести список 10 процессов, которые
максимально используют время центрального
процессора. (
)
2) Занести этот список в переменную.( )
3) Создать «№гр_Фамилия» директорию.(
) В ней создать файл в который записать
содержимое из переменной п.2.( )
4) Вывести на экран содержимое созданного
файла.(
)
59

60.

Логические операции:
Операция
Описание
Пример
Результат
Логическое И
$True -and $True
True
Логическое ИЛИ
$False -or $False
False
Логическое НЕ
-not $False
True
Логическое НЕ
! $True
False
60

61.

Написать функцию:
1) Ввести числовое значения трех переменных.
2) Вывести в файл три строки показывающие
следующие операции с этими числами:
число_1
число_2
число_1
число_2
число_1
число_2
число_3
число_3
число_2
число_3
результат
результат
результат
Например:
61

62.

Результат
работы
командлеты

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

63.

‒ логическое свойство, которое
определяет, является ли рассматриваемый объект
файловой
системы
контейнером,
т.е.
директорией, или это файл.
Если
‒ этот объект ‒
директория.
Если
‒ этот объект ‒ файл.
63

64.

Фильтрация объектов по условия:
логическое_условие
Пример:
$_.PSisContainer
$_.PSisContainer
где $_ ‒ указывает на очередной объект входного
потока;
PSIsContainer ‒ свойство объекта логического
типа.
64

65.

Сравнить результат выполнения через
параметры
:
диск путь_ к_ каталогу
диск путь_ к_ каталогу
Пример:
65

66.

1) Вывести список всех сервисов (
).
2) Используя
вывести сервисы,
которые остановлены.
66

67.

1) Создать свой каталог с именем «№гр_Фамилия».
2) Найти каталог, в котором имеются и подкаталоги и
файлы.
3) Вывести в файл в каталог «№гр_Фамилия» список
всех подкаталогов из п.2.( ,
$_.PSisContainer )
4) В конец этого файла добавить список всех файлов из
п.2. ( , ,
$_.PSisContainer )
5) Содержимое созданного файла вывести на экран.
(
)
67

68.

1) Создать свой каталог с именем «№гр_Фамилия».
2) Найти каталог, в котором имеются и подкаталоги и
файлы.
3) Создать файл в каталоге «№гр_Фамилия» со списком
файлов, имя которых начинается с буквы . ( ,
,
)
4) В конец этого файла добавить список подкаталогов из
п.2. ( ,
)
5) Содержимое созданного файла вывести на экран.
(
)
68

69.

1) Вывести в файл список всех процессов с
положительным временем процессора ( , ,
)
2) В конец этого файла добавить список
процессов, которые более 10 сек. занимали
процессор ( , ,
)
3) Содержимое созданного файла вывести на
экран. (
)
69

70.

1) Вывести в файл список всех процессов с
положительным временем процессора ( , ,
)
2) В конец этого файла добавить список процессов, у
которых в имени компании (
) присутствует
слово «
». По каждому процессу вывести
информацию: имя, идентификатор, время старта,
размер процессного времени, имя компании.
3) Содержимое созданного файла вывести на экран.
(
)
70

71.

1) Вывести в переменную
список всех процессов с
положительным временем процессора ( , ,
)
2) В конец содержимого переменной
добавить
список процессов, которые
a) более 10 сек. занимали процессор;
b) в имени компании (
) присутствует слово
«
».
c) По каждому процессу вывести информацию: имя,
идентификатор, время старта, размер процессного
времени, имя компании.
3) Содержимое переменной
вывести на экран.
71
(
)

72.

72
English     Русский Правила