Как можно выполнить навигацию по файловой структуре

Обновлено: 07.07.2024

1 Лабораторная работа 1. Навигация по файловой структуре и её обслуживание средствами интерпретатора командной строки ОС Windows Теоретическая часть. Каталог файл специального вида, содержащий имена подкаталогов и файлов. В ОС Windows используется иерархическая структура организации (дерево) файлов и каталогов. На каждом диске имеется единственный главный (корневой) каталог, который создается при разметке жёсткого диска. В корневой каталог могут входить другие каталоги и файлы. Уровень 0 (корневой каталог) Подкаталоги Уровень 1 Уровень 2 Рисунок 1 Иерархическая организация файловой структуры Родительский каталог каталог, имеющий подкаталоги. Подкаталог каталог, который входит в другой каталог. Таким образом, любой каталог, содержащий каталоги нижнего уровня, может быть, с одной стороны, по отношению к ним родительским, а с другой стороны, подчиненным по отношению к каталогу верхнего уровня. Путь цепочка соподчинённых каталогов, которую необходимо пройти по иерархической структуре к каталогу, где находится искомый файл. При Белоконь М.В

2 задании пути имена каталогов записываются в порядке следования и отделяются друг от друга символом \. Ввод команды осуществляется в соответствии с определёнными правилами форматом команды. Обобщённый формат команды: Имя команды [Параметры] [Ключи] Квадратные скобки говорят о том, что параметры и ключи не являются обязательными атрибутами команды. Ключи начинаются с символа / или -. После ввода команды с клавиатуры для её выполнения необходимо нажать клавишу Enter. Практическая часть Выполняя практическую часть лабораторной работы, необходимо делать скриншоты каждого задания. В отчете размещаются номера заданий и скриншоты активного окна (в нашем случае это окно интерпретатора командной строки Windows). Скриншот активного окна можно сделать с помощью комбинации клавиш Alt + Prt Scr. Для удобства (в целях уменьшения размера скриншота) размер окна можно менять. Некоторые задания требуют текстового ответа. 1. Запустить интерпретатор командной строки Windows cmd.exe можно несколькими способами: 1. Пуск Все программы Стандартные Командная строка 2. Пуск в поле «Найти программы и файлы» ввести имя запускающего файла cmd.exe 3. Пуск Все программы Стандартные ПКМ на Командная строка Запуск от имени администратора Белоконь М.В

3 Для этой лабораторной работы достаточно воспользоваться первым или вторым способом. После запуска интерпретатора командной строки появляется приглашение ОС с указанием текущего местоположения: В данном случае мы находимся в каталоге пользователя (на приведенном скриншоте это Мария), являющегося подкаталогом каталога Users, который, в свою очередь, является подкаталогом корневого каталога C:. 2. Выведем справочную информацию по всем доступным командам интерпретатора введём в командную строку имя команды help и нажмём клавишу Enter. Белоконь М.В

5 3. Выведем справку по команде dir. Для этого дадим команду help dir Белоконь М.В

6 Можно ли достичь аналогичного результата, введя команду dir с ключом? dir /? Подтвердите ответ скриншотом. 4. Просмотрим содержимое текущего каталога командой dir без параметров и ключей: Белоконь М.В

7 5. Просмотрим содержимое родительского каталога Users дадим команду dir, в качестве параметра укажем путь к каталогу Users: dir C:\Users 6. Для очистки экрана используется команда cls. Выполним эту команду, посмотрим на результат. Белоконь М.В

8 7. Перейдём в родительский каталог Users командой смены каталога cd. Вызовем справку по команде cd 8. Переход в родительский каталог предполагает параметр.. 9. Перейдём в корневой каталог C:. В данном случае можно применить команду cd. так как C: является родительским каталогом для каталога Users или воспользоваться параметром \ команды cd (позволяет перейти из подкаталога любого уровня сразу в корневой каталог) Белоконь М.В

9 10. Создадим в каталоге C: новый каталог Lab1 командой md: md Lab1 Перейдём в него: cd Lab1 Самостоятельно создайте внутри ещё 3 каталога: texts, temp и info, дайте команду просмотра содержимого текущего каталога Lab1 и приведите скриншот. 11. Перейдём в каталог texts и создадим внутри него текстовый файл task.txt. Для этого применим команду копирования файлов copy с параметрами con имя файла: copy con task.txt После нажатия клавиши Enter мы перейдём в режим редактирования содержимого файла. Заполним файл следующими сведениями: Фамилия Имя Отчество студент(ка) группы 231 географического факультета Белоконь М.В

10 Саратовского государственного университета им. Н.Г. Чернышевского Для завершения создания файла необходимо ввести символ конца файла нажатием клавиши F6 или комбинации клавиш Ctrl + Z и последующим нажатием клавиши Enter. 12. Просмотрим содержимое созданного нами файла: type task.txt 13. Для переименования файлов и каталогов используется команда ren. Переименуем файл task.txt в author.txt: ren task.txt author.txt Белоконь М.В

11 14. Убедимся, что файл действительно переименован: dir 15. Скопируем файл author.txt в каталог temp. Сейчас мы находимся в каталоге texts, являющемся подкаталогом каталога Lab1. Каталог temp также является подкаталогом Lab1: C: Lab1 texts temp info author.txt Белоконь М.В

12 Для команды copy необходимо указать в качестве параметров источник и приёмник. Источником является имя копируемого файла (если мы находимся в том же каталоге, где находится он) или путь к нему абсолютный (полный) или относительный (путь по отношению к текущему каталогу). Приёмником является путь к копии файла (абсолютный или относительный). Если необходимо скопировать файл с другим именем, новое имя необходимо указать. Скопируем файл author.txt в каталог temp с тем же именем. Так как мы находимся в том же каталоге, где расположен файл, в качестве источника укажем только его имя. В качестве приёмника можно указать абсолютный (полный) путь C:\Lab1\temp или относительный..\temp.. обозначается родительский каталог, Lab1 является родительским для каталога temp, из которого мы копируем. Попробуем указать относительный путь copy author.txt..\temp 16. Скопируем файл author.txt в каталог info с новым именем student.txt. В этот раз используем в качестве приёмника полный путь и укажем новое имя файла: copy author.txt C:\Lab1\info\student.txt Белоконь М.В

13 17. Убедимся, что мы выполнили операции копирования правильно дадим команду dir, указав в качестве параметров пути к каталогам temp и info. Можно использовать как абсолютный, так и относительный путь: dir C:\Lab1\temp dir..\info 18. Перейдём в каталог Lab1: cd.. Переименуем каталог temp в September: ren temp September Белоконь М.В

14 Проверим результат: dir 19. Переместим файл author.txt из каталога texts в каталог info с помощью команды move. Параметры команды move аналогичны параметрам команды copy. Так мы находимся в каталоге, являющимся родительским по отношению к каталогу texts, который содержит перемещаемый файл, то в качестве источника надо указать абсолютный или относительный путь к файлу. Укажем относительный путь: move texts\author.txt info 20. Убедитесь в правильности выполнения операции перемещения с помощью команды dir (аналогично заданию 17). Приведите скриншоты содержимого каталогов texts и info. Белоконь М.В

15 21. Перейдём в каталог September и удалим файл author.txt cd September Просмотрим содержимое каталога dir 22. Удалим файл author.txt del author.txt Проверим правильность выполнения операции удаления: dir Белоконь М.В

16 23. Перейдём в родительский каталог: cd.. Просмотрим его содержимое: dir 24. Удалим каталог texts: rd texts Убедимся в правильности результата: dir Белоконь М.В

17 25. Перейдём в каталог September cd September Попробуем удалить каталог, находясь в нём 26. Поднимемся в родительский каталог: cd.. Самостоятельно удалите каталог September, убедитесь в правильности результата, приведите скриншот. 27. Попробуем удалить каталог info: rd info 28. Вызовем справку для команды rd: Белоконь М.В

18 29. Ключ /s позволит удалить все файлы и подкаталоги, находящиеся внутри указанного каталога. Воспользуемся командой rd с ключом s: rd info /s Подтвердим запрос вводом символа y и нажатием клавиши Enter. 30. Проверим результат выполнения команды: dir Белоконь М.В

19 31. Перейдём в каталог C:. Он одновременно является корневым каталогом и родительским каталогом для каталога Lab1, поэтому можно воспользоваться любым из двух вариантов команды cd: cd \ cd Удалим каталог Lab1: rd Lab1 Белоконь М.В

К основным операциям с файловой структурой относятся:

навигация по файловой структуре;

запуск программ и открытие документов;

копирование файлов и папок;

перемещение файлов и папок;

удаление файлов и папок;

переименование файлов и папок;

Все операции с файлами и папками в Windows можно выполнять несколькими различными способами. Каждый выбирает себе те приемы, которые ему кажутся наиболее удобными. Обычно с приобретением опыта работы на компьютере совокупность используемых приемов меняется.

При таком подходе к операциям с файловой структурой следует иметь в виду несколько замечаний.

При перетаскивании значков объектов между папками, принадлежащими одному диску, автоматически выполняется перемещение объектов. Если нужно выполнить копирование, используют специальное перетаскивание.

При перетаскивании значков объектов между папками, принадлежащими разным дискам, автоматически выполняется копирование объектов. Если нужно выполнить перемещение, используют специальное перетаскивание.

Общие сведения

Работа с файловой системой в окнах папок не вполне удобна, но для этой цели есть и более мощное средство -- программа Проводник.

Окно программы Проводник очень похоже на окна папок. Основное отличие в том, что окно Проводника имеет не одну рабочую область, а две: левую панель, называемую панелью папок, и правую панель, называемую панелью содержимого.

Цель навигации состоит в обеспечении доступа к нужной папке и ее содержимому. Мы специально не говорим о том, что цель навигации -- это поиск нужных файлов и папок, поскольку для этой операции есть специальные средства.

Навигацию по файловой структуре выполняют на левой панели Проводника, на которой показана структура папок. Папки могут быть развернуты или свернуты, а также раскрыты или закрыты. Если папка имеет вложенные папки, то на левой панели рядом с папкой отображается узел, отмеченный знаком «+». Щелчок на узле разворачивает папку, при этом значок узла меняется на «-». Таким же образом папки и сворачиваются.

Для того чтобы раскрыть папку, надо щелкнуть на ее значке. Содержимое раскрытой папки отображается на правой панели. Одна из папок на левой панели раскрыта всегда. Закрыть папку щелчком на ее значке невозможно -- она закроется автоматически при раскрытии любой другой папки.

Цель навигации состоит в обеспечении доступа к папке и ее содержимому.

Навигацию по файловой структуре выполняют на левой панели окна Проводник,на которой показана структура папок. Папки могут быть развернуты или свернуты, а также раскрыты или закрыты. Если папка имеет вложенные папки, то на левой панели рядом с папкой отображается узел, отмеченный знаком «+ ». Щелчок на узле разворачивает папку, при этом значок узла меняется на «-», таким же образом папки и сворачиваются. Для того чтобы раскрыть папку, надо щелкнуть на ее значке. Содержимое раскрытой папки отображается на правой панели.

Задания для тренировки 1.Навигация по файловой структуре.

1. Открыть окно Проводникана весь экран.

2. Просмотреть структуру папки Мой компьютер.

3. Просмотреть структуру диска С: или любого другого диска.

4. Перейти на один уровень вверх, используя кнопку Вверхна панели инструментов.

5. Перейти на один уровень вверх, используя клавишу Васкзрасе.

7. С помощью кнопки Папкина панели инструментов Обычные кнопкиотобразить/убрать панель папок, которая находится с левой стороны окна.

8. Используя меню Вид, Панели инструментов,убрать Адресную строкуи панель инструментов Обычные кнопки.

9.Сделать так, чтобы Проводниксодержал и адресную строку, и панель инструментов.

10. Используя меню Вид, Панель инструментов,убрать / восстановить подписи к обычным кнопкам.

Создание папок

Существует несколько способов создания папки:

1) с помощью меню Файл:

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

• выбрать в меню Файлкоманду Создать, Папку;

• на правой панели появится значок папки с названием Новая папка;

• название выделено, и в таком состоянии ей можно присвоить любое имя;

• нажать кнопку Еnter.

2) с помощью контекстного меню:

• на левой панели Проводникавыделить папку, внутри которой будет создана новая папка;

• указатель мыши перевести на правую панель;

• в свободном от значков месте на правой панели вызвать контекстное меню;

• выбрать в контекстном меню команду Создать, Папку;

• на правой панели появится значок папки с названием Новая папка;

• название выделено, и в таком состоянии папке можно присвоить любое имя;

• нажать кнопку Еnter

После того как папка будет создана, она войдет в состав файловой структуры, отображаемой на левой панели.

Задания для тренировки2. Создание папок.

1. В папке Мои документысоздать две папки: под своим именем и Задание с помощью контекстного меню.

2. В папке под своим именем с помощью меню Файлсоздать документ Word и назвать его Договор аренды.

3. Создать в папке под своим именем папку Отчет с помощью меню Файл.

4. Открыть документ Договор аренды.

5. Закрыть программу Word.

Копирование и перемещение объектов

Копировать файлы и папки можно несколькими способами, многие из которых подробно рассмотрены в предыдущей главе, в теме «Копирование и перемещение файлов и папок», которые активно применяются и в программе Проводник.В данной теме рассмотрим способ копирования объектов, используемый в программе Проводник.

Копирование выполняют методом перетаскивания значка объекта с правой панели Проводникана левую панель, для этого необходимо:

• на левой панели найти и раскрыть источник, чтобы на правой был виден копируемый объект;

• на левой панели найти приемник, но не раскрывать его;

• копируемый объект специальным перетаскиванием переместить с правой панели в левую на значок папки-приемника. Эта операция требует аккуратности, поскольку попасть одним значком точно на другой нелегко. Для контроля точности попадания надо следить за названием папки-приемника. В тот момент, когда наведение выполнено правильно, подпись значка меняет цвет. После этого отпустить кнопку мыши, появится меню, в котором выбрать команду Копироватьили Переместить.

Задания для тренировки3. Копирование и перемещение объектов.

1. Скопировать в папку Отчет файл Договор аренды.

2. В папке Отчет переименовать файл Договор аренды на 1.

3. Перенести файл 1 в папку под своим именем.

4. Скопировать файл Договор аренды из папки под своим именем в папку Задание с помощью специального перетаскивания.

Поиск файлов с помощью программы Проводник

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

Поиск </

Способы создания масок поиска рассмотрены в разделе «Поиск файлов» темы «Файловая структура».

Задания для тренировки4. Поиск файлов.

1. На всем компьютере найти файлы с расширением сюс, имена которых состоят из четырех символов.

2. Скопировать два файла из окна поиска в папку Задание.

3. На всем компьютере найти файлы с расширением из двух символов.

4. Скопировать два файла из окна поиска в папку Задание.

Создание ярлыка

Чтобы создать на рабочем столе или в любой папке ярлык, необходимо:

• открыть окно программы Проводник;

• осуществить навигацию по левой панели в поиске нужного объекта;

• выделить найденный объект на любой панели Проводника;

• с помощью специального перетаскивания переместить выбранный объект на значок нужной папки левой или правой панели;

• в момент отпускания кнопки на экране появится меню, в котором надо выбрать команду Создать ярлыки.

Изменение значка ярлыка

Чтобы изменить значок ярлыка, необходимо:

• щелкнуть правой кнопкой мыши на ярлыке;

• в контекстном меню выбрать пункт Свойства,появится диалоговое окно Свойства: Ярлык;

• в появившемся окне выбрать вкладку Ярлык;

• щелкнуть на кнопке Сменить значок,появится следующее диалоговое окно Смена значка;

• в появившемся окне выбрать значок и щелкнуть на кнопке ОК (для выбора значка из другого файла используется кнопка Обзор);

• в диалоговом окне Свойства: Ярлыкщелкнуть на кнопке ОК.

Задания для тренировки5. Создание ярлыка.

Создать в папке под своим именем ярлык для диска 3,5 А:\. Задания для тренировки 6.Изменение значка ярлыка.

Изменить вид ярлыка на любой другой, например на изображение

Удаление объектов

Удаление файлов и папок в Проводникеосуществляется точно так же, как в любом другом окне. Разница состоит лишь в том, что работа по удалению начинается с навигации. На левой панели открывают папку, содержащую удаляемый объект, а на правой панели выделяют объект или группу объектов

Удаление объектов можно выполнить несколькими способами:

1) классический способ — с помощью меню Файлкоманды Удалить(если ни один объект не выделен, эта команда не активизируется);

2) с помощью кнопки Удалить на панели инструментов Обычные кнопки;

3) с помощью контекстного меню — щелкнуть правой кнопкой мыши на удаляемом объекте и в контекстном меню выбрать команду Удалить;

4) с помощью клавиши Delete(самый удобный способ).

Задания для тренировки 7.Удаление объектов.

1. Из папки Задание удалить файлы, используя кнопку на панели инструментов.

2. На диске 3,5 А:\ создать еще одну папку РаботаЗ.

3. Из папки Моидокументы переместить папку под своим именем и папку Задание в папку РаботаЗ.

<filesystem> Заголовок реализует техническую спецификацию файловой системы C++ ISO/IEC TS 18822:2015 (окончательный вариант черновика: ISO/IEC JTC 1/SC 22/WG 21 N4100) и имеет типы и функции, позволяющие создавать независимый от платформы код для навигации по файловой системе. поскольку это межплатформенное приложение, оно содержит интерфейсы api, которые не относятся к Windowsным системам. Например, is_fifo(const path&) всегда возвращает значение false в Windows.

Обзор

Используйте <filesystem> API для следующих задач:

выполнение итерации по файлам и каталогам в указанном пути;

получение сведений о файлах, включая время создания, размер, расширение и корневой каталог;

составление, разделение и сравнение путей;

Создание, копирование и удаление каталогов

копирование и удаление файлов.

Дополнительные сведения о вводе-выводе файлов с помощью стандартной библиотеки см. в разделе Программирование iostream.

Создание и составление путей

Пути в Windows (начиная с XP) изначально хранятся в Юникоде. path Класс автоматически выполняет все необходимые преобразования строк. Он принимает аргументы как для широких, так и для узких символьных массивов, а также для std::string std::wstring типов, отформатированных как UTF8 или UTF16. Класс path также автоматически нормализует разделители путей. В аргументах конструктора в качестве разделителя каталогов можно использовать одиночную косую черту. этот разделитель позволяет использовать одни и те же строки для хранения путей в Windows и UNIX средах:

Для объединения двух путей можно использовать перегруженные операторы / и /= , которые аналогичны операторам + и += в std::string и std::wstring . path Объект будет удобным образом предоставлять разделители, если это не так.

Проверка путей

Класс Path имеет несколько методов, возвращающих сведения о различных частях пути. Эта информация отличается от сведений о сущности файловой системы, на которую может ссылаться. Можно получить корень, относительный путь, имя файла, расширение файла и другие сведения. Можно выполнять итерацию по объекту path для проверки всех папок в иерархии. В следующем примере показано, как выполнить итерацию по объекту пути. И, как получить сведения о его частях.

Код создает следующие выходные данные:

Сравнение путей

Класс path перегружает операторы сравнения на равенство как std::string и std::wstring . При сравнении двух путей необходимо выполнить сравнение строк после нормализации разделителей. Если пропущена Замыкающая косая черта (или обратная косая черта), она не добавляется и влияет на сравнение. В следующем примере показано, как выполняется сравнение значений пути:

Для запуска этого кода вставьте его в полный пример выше перед main и раскомментируйте строку, которая вызывает его в основном объекте.

Преобразование между типами пути и строки

Объект path может быть неявно преобразован в std::wstring или std::string . Это означает, что можно передать путь к таким функциям wofstream::open , как, как показано в следующем примере:

Итерация по каталогам и файлам

<filesystem> Заголовок предоставляет directory_iterator тип для итерации по отдельным каталогам и recursive_directory_iterator класс для рекурсивного прохода по каталогу и его подкаталогам. После создания итератора путем передачи ему объекта path итератор указывает на первое значение directory_entry в пути. Создайте конечный итератор путем вызова конструктора по умолчанию.

При итерации по каталогу существует несколько типов элементов, которые можно обнаружить. К этим элементам относятся каталоги, файлы, символические ссылки, файлы сокетов и др. directory_iterator Возвращает свои элементы в виде directory_entry объектов.

Читайте также: