606.82K

PS1 Введение в powershel 2024 03

1.

1

2.

http://winintro.ru/windowspowershellhelp.ru/
2

3.

https://learn.microsoft.com/ruru/powershell/scripting/install/installin
g-powershell-onlinux?view=powershell-7.3
3

4.

Попов А.В. Введение в PowerShell. СПб.:
БХВ-Петербург, 2009.
4

5.

Windows PowerShell – это оболочка
командной строки Windows,
разработанная специально для системных
администраторов.
Эта оболочка содержит интерактивную
командную строку и среду сценариев,
которые можно использовать как по
одиночке, так и вместе.
5

6.

PowerShell полностью объектноориентирована. Результатом выполнения
команды будет не текст, а объект. Она
имеет конвейер, в который передаются и в
котором обрабатываются результаты
отдельных команд. Исходные и
промежуточные значения и результаты
являются объектами, а не текстом.
6

7.

Объекты PowerShell не отличаются от
объектов в программах C++ или C#.
Все объекты представляют собой блок
данных с атрибутами и методами. Методы
представляют собой действия, которые
можно совершить с объектом.
7

8.

(начало)
• Обеспечение прямого доступа из командной
строки к объектам COM, WMI, .NET
• Организация работы с произвольными
источниками данных в командной строке по
принципу файловой системы
• Разработка интуитивно понятной
унифицированной структуры встроенных команд,
основанной на их функциональном назначении
• Обеспечение возможности расширения
встроенного набора команд
• Организация поддержки знакомых команд из
других оболочек
8

9.

(окончание)
• Разработка полноценной встроенной справочной
системы для внутренних команд
• Реализация автоматического завершения при
вводе с клавиатуры имен команд, их параметров,
а также имен файлов и папок
• Единицей обработки является объект, а не строка
текста
9

10.

Пуск (в левом нижнем углу на эмблеме Windows нажать
правую клавишу мыши)
Выполнить
PowerShell
в строке cmd.exe ввести
PowerShell
10

11.

11

12.

Выполнить в среде PowerShell следующие
строки:
Вычисление выражений
Переменные
12

13.

Нажатие кнопок и позволяет прокручивать историю
команд, и выбирать ранее набранные команды;
Tab — автоматическое завершение командлет;
Скопировать в буфер — выделите эту часть текста мышью и
нажмите Enter или правую клавишу мыши;
Вставить текст из буфера в место расположения курсора —
просто нажмите правую кнопку мыши;
Ctrl+С — прервать вывод результатов выполнения;
13

14.

Esc— удаляет весь текст в текущей строке;
Движение по тексту влево по символам кнопка ;
Движение по тексту влево по словам кнопки Ctrl + ;
Движение по тексту вправо по символам кнопка ;
Движение по тексту вправо по словам кнопки Ctrl + ;
Переход в начало строки кнопка Home;
Переход в конец строки кнопка End;
Ctrl+Home — удаляет текст, начиная с текущей позиции курсора
до начала строки;
Ctrl+End — удаляет текст, начиная с текущей позиции курсора и
до конца строки.
14

15.

PowerShell использует новое понятие
«командлеты» (пишется «cmdlet»).
Командлет – это простой инструмент
командной строки, интегрированный в
оболочку и выполняющий единственную
функцию.
15

16.

Командлеты
можно
использовать
поодиночке, но их мощь становится более
очевидной при использовании комбинаций
(конвейер) командлетов для выполнения
сложных задач.
16

17.

PowerShell содержит более сотни базовых
командлетов, а также дает возможность
создавать собственные командлеты и
сценарии
и
передавать
их
другим
пользователям.
17

18.

PowerShell дает доступ к файловой системе
компьютера.
Благодаря поставщикам PowerShell имеется
легкий доступ к другим хранилищам
данных, таким как реестр и хранилища
сертификатов.
18

19.

19

20.

Общий вид командлеты:
имя_командлеты список_параметров
Командлет параметров (пустой список параметров):
имя_командлеты
Командлет с одним параметром:
имя_командлеты параметр
20

21.

имя_командлеты =>Глагол-Существительное
Глагол определяет действие, которое надо
выполнить:
,
,
,
,
Существительное определяет объект, над
которым, надо выполнить действие:
,
,
Пример:
,
,
,
,
21

22.

имя_командлета список_параметров
В список_параметров могут входить
следующие типы параметров:
переключатель;
параметр со списком значений;
значения без указания параметра.
22

23.

Перед именем параметра должен стоять знак
минуса (-) :
–имя_переключателя
–имя_параметра список_значений
Перед значением параметра НЕТ знака
минуса:
значение_без_параметра
23

24.

Параметры отделяются друг от друга
группой пробелов (один или более).
Выполнить пример:
24

25.

Командлет можно набирать полным
именем или её псевдонимов (алиасом):
- полное имя
- псевдоним или алиас этой командлеты
25

26.

– для совместимости
имен с разными интерфейсами
dir, ls, Get-ChildItem
(стандартные
псевдонимы) – для быстрого ввода
команд: Get => g, Set => s,
Location => L тогда
Get-Location => gl,
Set-Location => sl
26

27.

Командлет просмотра псевдонимов:
или псевдоним (алиас) этой командлеты
27

28.

Возможные параметры
имя-командлеты
Пример
:
имя-алиаса
Пример
28

29.

Вывести список синонимов командлет
1)
2)
3)
4)
5)
29

30.

Определение новых псевдонимов:
имя-алиаса
имя-командлеты
Пример:
30

31.

Удаление псевдонимов:
имя-алиаса
Пример:
31

32.

Одной команде может соответствовать
несколько псевдонимов
Пример:
=>
или
Один псевдоним не может относиться
к более чем одной команде
32

33.

1) Показать все алиасы, начинающиеся с
буквы .
2) Создать алиас
для командлеты
.
3) Показать все алиасы, начинающиеся с
.
33

34.

Маски в именах файлов
Для некоторых видов работ с файлами
(групповых
операций
или
поиска)
используется маска, содержащая символы
подстановки «*» и «?».
Маску ещё называют шаблоном поиска
или выборки.
34

35.

Маски в именах файлов
Символ «*» в маске означает, что вместо
него может быть подставлено любое
количество, быть может пустое, любых
символов. То есть их может не быть совсем,
либо быть несколько.
Символ «?» в маске означает, что вместо
него должен стоять один любой символ.
35

36.

Примеры использования маски
Часто используется маска: «*.*». В этом
случае и имя файла и его расширение может
принимать любые значения, а действие
команды с такой маской распространяется
на все файлы без исключения.
36

37.

Примеры использования маски
Маска «*.docx» относится к файлам с
расширением «docх», то есть файлам MS
Word.
37

38.

Примеры использования маски
Маска «*.?*» означает, что расширение
должно содержать хотя бы одну букву.
Файлы не имеющие расширения будут
проигнорированы.
Маска «*.??» обнаружит только файлы,
имеющие расширение ровно в две буквы.
Маска «???.*» выделит все файлы с
трехбуквенными именами.
38

39.

1) Показать все алиасы, начинающиеся с
буквы .
2) Создать алиасы
и
для
командлет
.
3) Показать все алиасы, начинающиеся с
.
39

40.

1) Показать все алиасы, начинающиеся с
2) Удалить все алиасы, начинающиеся с
.
3) Показать все алиасы, начинающиеся с
.
.
40

41.

41

42.

42

43.

Узнать текущее положение в файловой
системе:
Изменить текущее положение в файловой
системе:
или
или
43

44.

Переход по файловой системе:
Переход на родительский каталог:
Переход на корневой каталог:
Переход в рабочий каталог:
44

45.

Переход начиная от корня:
Переход начиная от текущего положения
в файловой системе:
Текущее положение видно в промпте:
Или по команде:
45

46.

Переход на родительский каталог:
Пример:
1) Текущий : А_2_1
Корневой
A
A_1
A_2
A_2_1
B
3) Каталог А_2
B_1
5) Каталог А
7) Корневой каталог
46

47.

Переход на корневой каталог:
Пример:
1) Текущий : А_2_1
Корневой
A
A_1
B
A_2
A_2_1
B_1
3) Корневой каталог
5) Каталог В_1
7) Каталог А_2
47

48.

1) Запомнить текущее положение в
файловой системе
2) Перейти в родительский каталог.
3) Перейти в следующий родительский
каталог.
4) Перейти в корневой каталог.
5) Вернуться в исходное положение.
48

49.

1) Посмотреть список дисков (
).
2) Перейти на другой диск.
3) Перейти на этом диске на три уровня
иерархии вниз.
4) Перейти в родительский каталог.
5) Перейти в следующий родительский
каталог.
6) Вывести на экран текущее положение на
каждом диске (
).
49

50.

1) Создать алиас
для
командлет
.
2) Вывести список синонимов командлет
50

51.

Просмотр содержимого каталога или
PS-Driver:
или
или
или
Параметры:
маска
параметр с аргументом;
“видит” скрытые файлы;
параметр переключатель,
просматривать и все дочерние директории.
51

52.

Просмотр содержимого текущего
каталога активного диска:
52

53.

Просмотр содержимого текущего
каталога диска
:
53

54.

Просмотр содержимого внутреннего
диска PowerShell, где располагаются
синонимы командлет:
54

55.

Просмотр содержимого внутреннего
диска PowerShell, где располагаются
переменные среды Windows и их
значения:
55

56.

Просмотр содержимого конкретного
каталога и диска :
диск путь_ к_ каталогу
Пример:
здесь потребовались кавычки ( ), так как в
имени каталога присутствует пробел.
56

57.

Параметр переключатель
позволяет видеть в содержимом каталога
скрытые файлы:
Примеры:
57

58.

Параметр с аргументом
позволяет
выводить только те файлы каталога,
которые удовлетворяют маске:
[диск путь_ к_ каталогу]
маска
Пример:
58

59.

Параметр переключатель
позволяет выводить содержимое
текущего каталога и всех его
подкаталогов:
диск путь_ к_ каталогу
Пример:
59

60.

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

61.

1) Вывести на экран каталог дисков:
.
2) Перейти на диск
в каталог
.
3) Найти, где расположена программа Word
(WinWord.exe). Использовать командлет
с маской
и параметром
61

62.

1) Зайти в каталог, где расположена
программа Word (WinWord.exe). ( )
2) Вывести на экран содержимое этого
каталога. ( )
3) Вывести на экран из этого каталога только
файлы с расширением
. ( , маска)
62

63.

1) Вывести на экран из каталога (где
расположен WinWord.exe) все файлы,
которые начинаются с буквы .
2) Вывести на экран из этого каталога все
файлы, которые начинаются с
.
3) Вывести на экран из этого каталога все
файлы, которые начинаются с
.
4) Вывести на экран из этого каталога все
файлы начинающиеся с
или
.
63

64.

Создание каталога :
или
Параметры:
тип объекта – каталог;
имя имя создаваемого каталога;
путь родительский каталог, где
будет создаваться новый каталог.
64

65.

Пример выполняем в рабочей директории:
Рабочий
Новый
65

66.

Создание файла:
или
Параметры:
имя имя создаваемого файла
тип объекта файл
путь родительский каталог, где
будет создаваться файл
66

67.

Пример выполняем в рабочей директории:
Рабочий
Новый
NewF
67

68.

Создание файла:
или
Параметры:
если файла уже существует, то
он будет перезаписан
значение указывается значение,
которое будет записано в создаваемый
файл
68

69.

Просмотр содержимого файла:
или
или или
Параметры:
путь путь, который включает и
имя просматриваемого файла
кодировка кодировка файла:
Unicode, Byte, BigEndianUnicode, UTF8,
UTF7, UTF32, Ascii ;
69

70.

Просмотр содержимого файла:
Пример:
70

71.

Копирование файла:
или
или
Параметры:
или
путь путь, который включает и
имя копируемого файла
путь место, куда надо
скопировать файл;
формирует сообщение о
выполненных операциях копирования.
71

72.

Пример: перейти в рабочий каталог ( )
Рабочий
Новый
NewF
NewF
72

73.

Переименование файла:
или
или
Параметры:
путь путь, который включает и
имя переименоваемого файла;
имя новое имя файла;
формирует сообщение о
выполненных операциях переименования.
73

74.

Пример:
Рабочий
Новый
NewF
NdF
74

75.

Перемещение файла:
или
или
Параметры:
или
путь путь, который включает и
имя перемещаемого файла;
путь место, куда будет
перемещаться файл;
формирует сообщение о
выполненных операциях переименования.
75

76.

Пример:
Рабочий
Новый
NdF
NewF
76

77.

Удаление файла или каталога:
или
или
или
или
или
или
Параметры:
путь путь, который включает и
имя удаляемого файла (или каталога);
не удаляет, а только показывает
что будет удалено.
77

78.

Удаление каталога:
или
или
или
или
или
или
Параметры:
удаляет содержимое каталога и
всех его подкаталогов;
78

79.

Пример:
Рабочий
Новый
NewF
79

80.

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

81.

1) Вывести на экран содержимое каталога
«№ группы_Фамилия»
2) В директории «№ группы_Фамилия»
создайте текстовый файл с расширением
. При создании записать в файл
текст:
New file is created by New-Item.
3) Вывести на экран содержимое каталога
«№ группы_Фамилия»
81

82.

Вывести на экран содержимое txt-файла
(
) созданного в директории
«№ группы_Фамилия» .
82

83.

1) Скопировать созданный файл из каталога
с именем «№ группы_Фамилия» в каталог
с именем «Ваше_Имя». (
)
83

84.

1) Переименовать файл в каталоге с именем
«Ваше_Имя». (
)
84

85.

1) Перенести файл из каталога с именем
«Ваше_Имя» в родительский каталог с
именем «№ группы_Фамилия».
2) Вывести на экран содержимого каталога с
именем «№ группы_Фамилия». (показ)
3) Удалить подкаталог с именем
«Ваше_Имя». (
).
4) Вывести на экран содержимого каталога с
именем «№ группы_Фамилия». (показ)
85

86.

Удаление группы файлов:
или
или
Параметры:
путь месторасположение
удаляемых объектов;
маска какие объекты удаляются;
маска какие объекты не удаляют;
не удаляет, а только показывает что
будет удалено.
86

87.

Создайте каталог, в имени которого
присутствует текущая дата:
87

88.

• Виртуальные диски PowerShell
(доступны только из оболочки
PowerShell)
• Список дисков доступных в сеансе:
или
88

89.

Перенаправление информации, которая
должна быть выведена на экран, в
создаваемый заново текстовый файл (не
надо предварительно создавать файл):
командлета > файл
Дозапись
информации
текстового файла:
командлета >> файл
в
конец
89

90.

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

91.

Перенаправление
информации
использованием командлеты
:
командлета |
Дозапись
информации
текстового файла:
командлета |
файл
с
файл
в
конец
91

92.

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

93.

Подавление вывода информации по
результатам выполнения командлеты.
93

94.

Диски в PowerShell – это различные
хранилища данных.
Хранилища данных связаны с
конкретным Провайдером (Поставщик).
И структура данных и операции над ними
зависит от Провайдера.
94

95.

Провайдеры (Поставщики) PowerShell —
это программы, которые предоставляют
пользователям PowerShell доступ к данным,
содержащимся
в
специализированных
хранилищах.
Провайдеры позволяют просматривать
эти данные и управлять ими.
Такие данные размещаются аналогично
данным в файловой системе на диске.
95

96.

Список Провайдеров можно получить
используя командлет:
96

97.

Поставщик (Provider)
Описание
Alias
Предоставляет доступ к псевдонимам Windows
PowerShell и их значениям.
Certificate
Предоставляет доступ только для чтения к
хранилищам сертификатов X509 и сертификатам.
Environment
Предоставляет доступ к переменным среды Windows.
FileSystem
Предоставляет доступ к файлам и каталогам.
Function
Предоставляет доступ к функциям, определенным в
Windows PowerShell.
Registry
Предоставляет доступ к разделам системного реестра
и их значениям.
Variable
Предоставляет доступ к переменным Windows
PowerShell и их значениям.
WSMan
Предоставляет доступ к сведениям о конфигурации
97
WSMan.

98.

Формат выводимой информации о
содержимом
каталога
зависит
от
провайдера, которому соответствует диск.
Эту информацию можно получить
используя командлету
в
конвейере:
99

99.

Список дисков доступных в сеансе:
или
Параметры:
имя диска
100

100.

Выполните операции:
101

101.

1) Вывести на экран список всех записей
диска
, которые начинаются с
2) Вывести на экран список всех записей
диска
, которые начинаются с
102

102.

или
или
Параметры:
имя
имя создаваемого диска
путь каталог, на который
указывает виртуальный диск
103

103.

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

104.

Вывод информации пользователю:
Выводимая информация
Параметры:
название_цвета_фона
название_цвета_текста
Пример:
Информация
105

105.

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

106.

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