ГлавнаяОГЭ ИнформатикаТеорияФайловая система и поиск в ОС — теория для ОГЭ (задания 11, 12)

Файловая система и поиск в ОС — теория для ОГЭ (задания 11, 12)

Коротко о главном

Файловая система — это иерархическая (древовидная) структура хранения файлов на диске. Все файлы и папки образуют дерево: на верхнем уровне — корневой каталог (диск), внутри — подкаталоги (папки), внутри них — файлы или другие подкаталоги.

В заданиях 11–12 ОГЭ проверяют умение:

  • записывать полный путь к файлу;
  • определять имя каталога или файла по маршруту;
  • работать с масками поиска (символы * и ?);
  • понимать, какие файлы будут найдены при поиске по маске или по подстроке в имени.

Определения и формулы/правила

Термин Определение
Корневой каталог Верхний уровень дерева, обозначается буквой диска, например A:\A:\backslash или C:\C:\backslash
Каталог (папка) Узел дерева, может содержать файлы и другие каталоги
Путь (маршрут) Последовательность имён каталогов от корня до файла, разделённых \\backslash (Windows) или // (Unix)
Полное имя файла Путь + имя файла с расширением
Маска поиска Шаблон имени с использованием * и ?

Правила записи пути. В Windows разделитель — обратный слэш: \\backslash. Пример: A:\Doc\Work\text.txtA:\backslash Doc \backslash Work \backslash text.txt Это означает: диск AA, папка DocDoc, в ней папка WorkWork, в ней файл text.txttext.txt.

Правила масок поиска.

Символ Значение
* любое количество любых символов (в том числе ноль)
? ровно один любой символ

Примеры масок:

  • *.txt — все файлы с расширением txt, любое имя;
  • a?.doc — файлы вида a1.doc, ab.doc, но не a.doc и не abc.doc (ровно один символ после a);
  • file*.* — все файлы, чьё имя начинается на file, расширение любое;
  • ?????.txt — файлы с txt-расширением, имя ровно из 5 символов.

Работа с деревом каталогов на экзамене. Часто дают рисунок дерева и просят:

  1. Найти путь к конкретному файлу — идти от корня вниз, записывая имена папок через разделитель.
  2. Найти файл по данному пути — идти по дереву от корня, спускаясь по указанным именам папок.
  3. Определить количество файлов, подходящих под маску, — просмотреть список имён и сравнить каждое с шаблоном.

Как применять

Пример 1. Дано дерево: диск CC → папка PhotoPhoto → папка 20232023 → файл may.jpgmay.jpg. Полный путь: C:\Photo\2023\may.jpgC:\backslash Photo \backslash 2023 \backslash may.jpg

Пример 2. Определить, подходят ли имена под маску s*.??2:

  • sound.a12sound.a12 — подходит (начинается на s, заканчивается на 2, перед 2 — ровно два символа: a1);
  • skip.12skip.12 — не подходит (перед . должно быть s..., а после точки — ровно 3 символа: ??2, здесь только 2 символа);
  • star.b32star.b32 — подходит.

Пример 3. Задан путь D:\School\Class9\test.docxD:\backslash School\backslash Class9\backslash test.docx. Нужно определить имя каталога третьего уровня (считая диск первым уровнем). Уровень 1 — диск DD, уровень 2 — SchoolSchool, уровень 3 — Class9Class9. Ответ: Class9Class9.

Типичные ошибки

  • Путают разделители: используют // вместо \\backslash в задачах с Windows-путями (в ответе ОГЭ, как правило, ожидается разделитель из условия задачи).
  • Забывают, что ? заменяет ровно один символ, а не «любое количество» — путают с *.
  • Не учитывают регистр и точку в маске: . в маске всегда должна совпадать с точкой перед расширением.
  • Считают уровни каталогов неправильно — забывают, что диск (корень) — это тоже уровень.
  • При подсчёте файлов по маске забывают проверить длину имени, если в маске стоят ?.
  • Путают полное имя файла (с путём) и просто имя файла (без пути).

Где встречается на экзамене

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

Задание 12 чаще всего представляет дерево каталогов (текстом или графически) и требует записать полный путь к файлу, определить имя каталога на определённом уровне или посчитать количество файлов/папок, удовлетворяющих условию.

Частые вопросы

Чем отличаются символы * и ? в маске поиска?

Символ * заменяет любое количество символов, включая ноль, а ? заменяет ровно один произвольный символ.

Как правильно записать путь к файлу в Windows?

От диска через обратный слэш перечисляют все папки по порядку, последним указывают имя файла с расширением, например C:\Docs\file.txtC:\backslash Docs \backslash file.txt.

Диск считается уровнем каталога?

Да, корневой каталог диска — это первый уровень дерева, поэтому при подсчёте уровней его нужно учитывать.

Как найти файл в дереве каталогов по описанию?

Нужно двигаться от корня вниз, на каждом шаге выбирая указанную папку, пока не дойдёте до нужного файла.

Подходит ли имя file.txt под маску f?le.*?

Да, так как ? заменяет ровно один символ (i), а * после точки соответствует расширению txt.

Что делать, если в маске несколько звёздочек?

Каждая * независимо может заменить любое количество символов (включая ноль) в соответствующей части имени.

Потренироваться: задание 11 · задание 12