Добавил:
t.me Установите расширение 'SyncShare' для решения тестов в LMS (Moodle): https://syncshare.naloaty.me/ . На всякий лучше отключить блокировщик рекламы с ним. || Как пользоваться ChatGPT в России: https://habr.com/ru/articles/704600/ || Также можно с VPNом заходить в bing.com через Edge браузер и общаться с Microsoft Bing Chat, но в последнее время они форсят Copilot и он мне меньше нравится. || Студент-заочник ГУАП, группа Z9411. Ещё учусь на 5-ом курсе 'Прикладной информатики' (09.03.03). || Если мой материал вам помог - можете написать мне 'Спасибо', мне будет очень приятно :) Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Z9411_OS_KafkaRS_LR6.docx
Скачиваний:
7
Добавлен:
24.10.2023
Размер:
1.44 Mб
Скачать

МИНИСТЕРСТВО НАУКИ И ВЫСШЕГО ОБРАЗОВАНИЯ РОССИЙСКОЙ ФЕДЕРАЦИИ

федеральное государственное автономное образовательное учреждение высшего образования

«САНКТ-ПЕТЕРБУРГСКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ АЭРОКОСМИЧЕСКОГО ПРИБОРОСТРОЕНИЯ»

ИНСТИТУТ НЕПРЕРЫВНОГО И ДИСТАНЦИОННОГО ОБРАЗОВАНИЯ

КАФЕДРА 41

ОЦЕНКА

ПРЕПОДАВАТЕЛЬ

канд. тех. наук, доцент

Аграновский А. В.

должность, уч. степень, звание

подпись, дата

инициалы, фамилия

ЛАБОРАТОРНАЯ РАБОТА №6

Разработка командлетов PowerShell для работы с файловой системой

по дисциплине: Операционные системы

РАБОТУ ВЫПОЛНИЛ

СТУДЕНТ ГР. №

Z9411

Кафка Р. С.

номер группы

подпись, дата

инициалы, фамилия

Студенческий билет №

2019/3603

Шифр ИНДО

Санкт-Петербург 2022

Цель работы: изучить командлеты PowerShell, предназначенные для работы с файловой системой.

Задания по лабораторной работе:

  1. Выполните все упражнения.

  2. Выведите содержимое любого каталога на экран и в текстовый файл, самостоятельно задавая последовательно не менее трех параметров фильтрации, например:

− только папки;

− последняя буква имени g или t;

− сортировка по именам.

  1. Выведите на экран и в текстовые файлы список псевдонимов командлетов для работы с файловой системой.

Следующие пункты необходимо осуществить, если они не были сделаны во время повторения упражнений.

  1. Посмотреть все диски доступны на персональном компьютере.

  2. Создать два каталога в текущем каталоге пользователя.

  3. Создать новый диск, обеспечивающий обращение к одному из созданных каталогов.

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

  5. Удалить созданные объекты. (Не забудьте, что все необходимо показать преподавателю. Поэтому удаляйте дубликаты директорий и файлов).

Порядок выполнения работы:

  1. Изучить методические указания.

  2. Выполнить все упражнения.

  3. Результат выполнения зафиксировать на скриншотах.

  4. Выполнить задания самостоятельной работы.

  5. Сделать выводы о проделанной работе.

Выполненные упражнения

Упражнение 2.12. Командлет Get-ChildItem.

  1. Возвратил все файлы .jpg в каталоге C:\Users\Kafka\OneDrive\Учёба, включая подкаталоги, с использованием команды (рис.1):

> Get-Childitem C:\Users\Kafka\OneDrive\Учёба -Include *jpg -Recurse -Force

Рисунок 1 – Список файлов с расширением .jpg в каталоге C:\Users\Kafka\OneDrive\Учёба

  1. Использовал параметр –Path для возврата списка файлов с расширением .jpg находящихся в разных каталогах: в каталоге C:\Users\Kafka\OneDrive, и папке C:\Users\Kafka\OneDrive\Учёба (рис.2-3). Два этих параметра разделяет запятая.

> Get-Childitem –Path C:\Users\Kafka\OneDrive\Учёба*jpg, C:\Users\Kafka\OneDrive\*jpg -Recurse –Force

Рисунок 2 – Применение параметра –Path, начало команды

Рисунок 3 – Применение параметра –Path, переход в другой каталог

  1. Получил все файлы с расширением .docx, имеющие в своем имени слово «ЛР» с использованием параметра (рис. 4).

> Get-ChildItem -Path C:\Users\Kafka\OneDrive\Учёба\*.docx -Filter *лр* -Recurse

Рисунок 4 – Фильтрация средствами параметра –Filter

  1. Отфильтровал файлы с помощью параметра –Include.

В качестве значения параметра указал все элементы, включая директорию, в которой производится поиск (рис.5). Вывел все файлы с расширением .docx, находящиеся в папке C:\Users\Kafka\OneDrive\Учёба:

> Get-ChildItem -Path C:\Users\Kafka\OneDrive\Учёба\* -Include *.docx

Рисунок 5 – Фильтрация средствами параметра -Include

  1. Отфильтровал файлы с помощью параметра -Exclude (рис.6)

> Get-ChildItem -Path C:\Users\Kafka\OneDrive\Учёба\* -Exclude *.docx

Рисунок 6 – Фильтрация средствами параметра - Exclude

Упражнение 2.13. Командлет Get-Item.

  1. Ввёл команду Get-Item для просмотра сведений о каталоге C:\Users\Kafka\OneDrive\Учёба (рис.7)

> Get-Item C:\Users\Kafka\OneDrive\Учёба

Рисунок 7 – Использование Get-Item для вывода информации о текущей папке

  1. Просмотрел сведения о двух папках. Для этого в командной строке наберал > Get-Item и нажал <Enter>. Так как параметр –Path не задан, то автоматически программные средства PowerShell потребовали уточнить путь до файлового контейнера (рис.8)

Рисунок 8 – Использование Get-Item для вывода информации в конвейере

  1. Посмотрел свойства объектов папки Учёба, используя конвейер команд (рис.9)

> Get-Item | Get-Member -MemberType Property

Рисунок 9 – Изучение свойств объекта System.IO.DirectoryInfo

  1. Посмотрел свойства файла kontr_iodo.docx папки Учёба (рис.10).

> Get-Item -Path C:\Users\Kafka\OneDrive\Учёба\kontr_iodo.docx | Get-Member –MemberType Property

Рисунок 10 – Изучение свойств объекта System.IO.FileInfo

Упражнение 2.14. Командлет New-Item.

  1. Создал пустой файл с указанием параметров –Path и –ItemType (рис.11):

> New-Item -Path F:\Lab6\file.txt -ItemType File

Рисунок 11 – Создание пустого файла

  1. Создал текстовый файл с наполнением, например (рис.12):

> New-Item -Path F:\Lab6\file_bold.txt -ItemType File –Value "Here is text for my new file"

Рисунок 12 – Создание нового текстового файла с наполнением

  1. Прочёл содержание текстового файла с помощью команды type, которая является псевдонимом командлета Get-Content (рис. 13):

PS F:\Lab6> type file_bold.txt

Рисунок 13 – Чтение содержимого текстового файла с помощью командлета Get-Content

  1. Создал новый файл Primer.tmp в папке F:\Lab6, скопировал с его одновременным переименованием F:\Lab6\Test.tmp, используя при этом псевдонимы командлетов (рис.14).

Для создания нового файла набрал:

PS F:\Lab6> New-Item Primer.txt -Type "file" -Value "Testik for GUAP" -Force

Осуществил копирование файла с одновременным переименованием с использованием псевдонима ren командлета Rename-Item и параметра –Passthru, позволяющего увидеть на экране монитора результат переноса.

PS F:\Lab6>ren Primer.txt Test.txt –Passthru

Рисунок 14 – Создание и копирование файлов средствами командлетов

Упражнение 2.15. Работа с файлами средствами PowerShell.

  1. Вывел все диски, к которым Windows PowerShell позволяет осуществлять доступ помощью командлета Get-Psdrive (рис.15). Диски выделяются двоеточием после их имени (:).

>Get-Psdrive

Рисунок 15 – Вывод списка дисков на персональном компьютрере

  1. Вывел все каталоги, к которым Windows PowerShell позволяет осуществлять доступ с помощью командлета Get-Childitem (рис.16).

> Get-Childitem

Рисунок 16 – Вывод данных о диске F

  1. Создал папку, в которую занёс 10 файлов разного типа, на диске F:\Lab6 (рис.17). Внутри нее добавил папку New_folder и скопировал в нее 5 файлов из папки Lab6.

Рисунок 17 – Содержание тестовой папки Lab6 в Проводнике ОС Windows

  1. Чтобы упростить работу с тестовыми файлами, создал в Windows PowerShell новый диск FK. Для этого выполнил команду New-Psdrive. Изменил конец пути так, чтобы он указывал на папку с тестовыми файлами (рис. 18):

> New-PSdrive -Name FK -Psprovider FileSystem -Root F:\Lab6

Рисунок 18 – Создание диска FK

  1. Воспользовался командой cd FK:, чтобы перейти в эту папку и проверил, что я нахожусь в нужной папке (рис.19). В оригинальном синтаксисе PowerShell, псевдоним cd будет заменен командой Set-Location:

> cd FK:

Рисунок 19 – Вывод содержания тестовой папки Lab6 средствами PowerShell

Для просмотра содержимого папки применил команду > Get-ChildItem.

  1. Скрыл файлы (рис.20), задавая параметр -Exclude с параметрами *.xlsx и *.txt:

>Get-Childitem * -Exclude *.xlsx, *.txt

Рисунок 20 – Вывод содержимого каталогов с сокрытием файлов

  1. Вывел только имена и размер файлов, игнорируя временные файлы с расширениями *.xlsx или *.txt (рис.21).

>Get-Childitem * -Exclude *.xlsx, *.txt | Select-Object name, length

Рисунок 21 – Вывод файлов каталога Lab6 по имени и размеру

  1. Ввёл в командную строку PowerShell:

> Get-Alias | Sort-Object Definition

Результат показан на рисунке 22.

Рисунок 22 – Результат команды Get-Alias | Sort-Object Definition

Посмотрел список всех возможных псевдонимов команд и переписал команду из п.7, используя псевдонимы (рис.23).

>ls * -ex *.xlsx, *.txt | select n*, le*

Рисунок 23 – Вывод файлов каталога Lab6 по имени и размеру с использованием псевдонимов

Результат оказался точно таким же, как и при использовании названий команд полностью.

  1. Отсортировал файлы по алфавиту, а потом по размеру файла (рис.24).

> Get-Childitem | Sort-Object name, length

Рисунок 24 – Сортировка файлов по алфавиту

  1. Удалил устройства FK:, с помощью команды (рис.25):

> Remove-PSDrive FK

Рисунок 25 – Удаление устройства FK

Соседние файлы в предмете Операционные системы