Файл — это именованный набор данных на носителе, с которым операционная система работает как с единым целым: у него есть имя, размер, содержимое и служебные сведения (даты, права). Папка (она же каталог или директория) — это контейнер, который хранит список файлов и других папок и собирает их в дерево. Ниже — имя и расширение, путь в Windows и Linux, атрибуты и права, основные действия мышью и командами.
Содержание
Файл и папка: в чём разница
Для файловой системы папка — тоже файл особого типа: её содержимое — таблица записей «имя -> где лежат метаданные объекта» (в ext4 запись ссылается на inode, в NTFS — на запись в таблице MFT). Поэтому у папки, как и у файла, есть имя, даты и права, а расширение ей не нужно.
| Файл | Папка (каталог, директория) | |
|---|---|---|
| Что хранит | Содержимое: текст, картинку, код программы, базу данных | Список имён вложенных файлов и папок со ссылками на их метаданные |
| Что можно делать | Открыть, изменить, переименовать, скопировать, переместить, удалить | Создать, переименовать, переместить, скопировать или удалить вместе с содержимым, войти внутрь |
| Есть ли расширение | Обычно да: report.docx, main.py |
Нет (точка в имени допустима, но ничего не значит) |
| Пример | C:\Users\Anna\Documents\report.docx, /home/anna/main.py |
C:\Users\Anna\Documents, /home/anna |
«Папка» (folder) — термин графических интерфейсов, «каталог» и «директория» (directory) — командной строки и документации; это одно и то же. Папка внутри папки — вложенная (подкаталог), на уровень выше — родительская, самая верхняя — корневая: в Windows C:\, в Linux и macOS /.
Имя файла и расширение
Имя файла состоит из основной части и расширения — того, что стоит после последней точки: у photo.jpg расширение jpg, у archive.tar.gz — gz. Длина имени ограничена файловой системой: 255 символов в NTFS и 255 байт в ext4 (для кириллицы в UTF-8 это около 127 букв).
Расширение — это соглашение, а не гарантия формата. Оно подсказывает, что внутри и чем открывать, но содержимое от переименования не меняется: photo.jpg, переименованный в photo.png, останется JPEG, и часть программ его не откроет. В Linux расширение почти ничего не решает: file photo.png смотрит на первые байты содержимого и ответит JPEG image data. В Windows расширение определяет, какая программа откроется по двойному щелчку, и в Проводнике оно по умолчанию скрыто — см. раздел про ошибки.
Два отличия систем, на которых регулярно спотыкаются:
- Регистр. В Linux
Report.txtиreport.txt— два разных файла в одной папке. В Windows на NTFS регистр запоминается, но не различается: второй файл создать не получится, аREPORT.TXTоткроет тот же файл. macOS на APFS по умолчанию ведёт себя как Windows. - Запрещённые символы. В Windows нельзя использовать
\ / : * ? " < > |, а именаCON,PRN,NUL,COM1—COM9,LPT1—LPT9зарезервированы под устройства. В Linux запрещены только/и нулевой байт.
Путь к файлу: абсолютный и относительный
Путь — адрес файла в дереве папок. Абсолютный путь начинается от корня и работает из любого места. Относительный отсчитывается от текущей папки программы или терминала; . обозначает текущую папку, .. — родительскую.
| Windows | Linux, macOS | |
|---|---|---|
| Разделитель | Обратный слеш \ (прямой / тоже принимается) |
Прямой слеш / |
| Корень | Буква диска: C:\, D:\ |
Единый корень /, диски монтируются в подпапки |
| Абсолютный путь | C:\Users\Anna\Documents\report.docx |
/home/anna/Documents/report.docx |
Относительный путь (из папки Documents) |
report.docx, ..\Downloads\photo.jpg |
report.docx, ../Downloads/photo.jpg |
В Windows по умолчанию полный путь ограничен 260 символами (константа MAX_PATH): глубоко вложенные проекты упираются в ошибку «путь слишком длинный». Лечится параметром реестра LongPathsEnabled (Windows 10 1607 и новее) или переносом проекта ближе к корню диска. В Linux лимит — 4096 байт, на практике до него не доходят.
Атрибуты и права
Атрибуты — служебные сведения об объекте: размер, даты создания и изменения, флаги. В Windows это «Только чтение», «Скрытый», «Системный», «Архивный» — видны в свойствах и командой attrib.
Права доступа решают, кто и что может делать с объектом. В Linux и macOS у файла есть владелец и группа, а права задаются тремя действиями — чтение r, запись w, выполнение x — для владельца, группы и остальных. Строка -rwxr-xr-- в выводе ls -l значит: владелец читает, пишет и запускает, группа читает и запускает, остальные только читают; меняются права командой chmod. Для папки те же буквы значат другое: r — видеть список файлов, w — создавать и удалять их внутри, x — входить в папку и открывать содержимое. Папка с r без x покажет имена, но не даст открыть ни один файл.
В Windows права хранятся в списках доступа NTFS (ACL): вкладка «Безопасность» в свойствах объекта или команда icacls. Модель гибче, но идея та же: есть владелец, остальным разрешения выдают явно.
Скрытые файлы и папки
В Linux и macOS скрыто всё, что начинается с точки: .bashrc, .git, .config; ls их не показывает, ls -a — показывает. В Windows скрытость — атрибут: attrib +h secret.txt прячет файл, dir /a показывает всё; в Проводнике Windows 11 — «Вид -> Показать -> Скрытые элементы». Скрытие — не защита: показ включается одним щелчком.
Основные действия с файлами и папками
В графическом интерфейсе всё делается правой кнопкой и перетаскиванием (внутри диска — перемещение, между дисками — копирование; с Ctrl — точно копия, с Shift — точно перенос). В командной строке те же действия — короткие команды, и знать их полезно: на серверах графического интерфейса обычно нет.
| Действие | Windows cmd | Windows PowerShell | Linux, macOS |
|---|---|---|---|
| Показать содержимое папки | dir |
Get-ChildItem (алиасы ls, dir) |
ls -l |
| Создать папку | mkdir reports |
New-Item -ItemType Directory reports (или mkdir) |
mkdir reports |
| Создать пустой файл | type nul > notes.txt |
New-Item notes.txt |
touch notes.txt |
| Скопировать | copy a.txt b.txt, папку — xcopy /e src dst |
Copy-Item a.txt b.txt, папку — -Recurse |
cp a.txt b.txt, папку — cp -r src dst |
| Переместить | move a.txt D:\ |
Move-Item a.txt D:\ |
mv a.txt /mnt/d/ |
| Переименовать | ren a.txt b.txt |
Rename-Item a.txt b.txt |
mv a.txt b.txt |
| Удалить файл | del a.txt |
Remove-Item a.txt |
rm a.txt |
| Удалить папку с содержимым | rmdir /s /q reports |
Remove-Item reports -Recurse |
rm -r reports |
| Найти по имени | dir /s /b *.pdf |
Get-ChildItem -Recurse -Filter *.pdf |
find ~ -name "*.pdf" |
В Linux переименование и перемещение — одна команда mv, потому что для файловой системы это одно действие: изменить запись в каталоге. Полный цикл в терминале Linux:
mkdir reports # папка
touch reports/q1.txt # пустой файл
cp reports/q1.txt reports/q1-copy.txt
mv reports/q1-copy.txt reports/q2.txt # переименовали
ls reports
# q1.txt q2.txt
rm reports/q2.txt
rm -r reports # папка удалена вместе с q1.txt
В PowerShell тот же цикл — командами из таблицы; единственная ловушка — Rename-Item reports\q1-copy.txt q2.txt принимает вторым аргументом только новое имя, а не путь.
Про удаление. Проводник и файловые менеджеры Linux (Nautilus, Dolphin) отправляют объект в Корзину, откуда его можно вернуть. Shift+Delete в Windows, а также del, Remove-Item и rm удаляют сразу; на сетевых дисках и флешках Windows тоже удаляет минуя Корзину. Физически данные остаются на диске, пока их не перезапишут, поэтому после ошибочного удаления лучше сразу прекратить запись на этот диск.
Ярлык и копия: в чём разница
Копия — самостоятельный файл с тем же содержимым: изменения в одном не затрагивают другой, место занимают оба. Ярлык — маленький файл-указатель на оригинал: в Windows это .lnk (стрелка в углу значка), в Linux и macOS — символическая ссылка (ln -s /path/to/original link_name). Удаление ярлыка не трогает оригинал, а удаление или перенос оригинала делает ярлык «битым». Передавать другому человеку нужно копию: ярлык на чужой машине ни на что не указывает.
Три типичные ошибки новичка
-
Двойное расширение. Проводник по умолчанию скрывает расширения известных типов, поэтому
photo.jpg.exeпоказывается какphoto.jpg, а по двойному щелчку запускается программа — так распространяются вирусы во вложениях. Решение: включить показ расширений («Вид -> Показать -> Расширения имён файлов»). -
Удаление системных папок.
C:\Windows,C:\Program Files,/etc,/usr,/bin— это сама операционная система и программы, а не «мусор». Место освобождают в своих папках и встроенной очисткой диска. В Linux не запускатьsudo rm -rf ...из чужих инструкций, не понимая, на какую папку команда указывает. -
Пробел в пути без кавычек. Оболочка делит строку по пробелам, и путь превращается в два аргумента.
cat My Docs/report.txt
# cat: My: No such file or directory
# cat: Docs/report.txt: No such file or directory
cat "My Docs/report.txt" # верно: путь в кавычках
В Windows так же: copy C:\My Docs\report.txt D:\ файл не найдёт, copy "C:\My Docs\report.txt" D:\ сработает. Проще не использовать пробелы в именах папок проектов: my-docs, my_docs.
Выводы
- Файл — это именованный набор данных на носителе, с которым операционная система работает как с единым целым; папка (каталог, директория) — контейнер со списком файлов и других папок, который собирает их в дерево.
- Для файловой системы папка — тоже файл особого типа с таблицей «имя -> метаданные», поэтому у неё есть имя, даты и права, а расширение ей не нужно.
- Расширение — часть имени после последней точки и только соглашение о формате: переименование
photo.jpgвphoto.pngсодержимое не меняет; в Linux регистр имени различается, в Windows и macOS по умолчанию — нет. - Путь — адрес файла в дереве папок: абсолютный начинается от корня (
C:\в Windows,/в Linux и macOS), относительный — от текущей папки, где.обозначает текущую папку, а..— родительскую. - Права доступа в Linux и macOS задаются тройкой
rwxдля владельца, группы и остальных (для папкиx— право входить внутрь), в Windows — списками доступа NTFS (ACL). - Основные действия — создать, скопировать, переместить, переименовать, удалить — выполняются мышью или командами (
mkdir,copy/cp,move/mv,del/rm);del,rmи Shift+Delete удаляют сразу, минуя Корзину.
Где применяется
Для системного администратора работа с файлами — ежедневный инструмент: логи лежат в /var/log, настройки служб — в /etc, а немалая часть инцидентов сводится к неверным правам на файл или переполненному диску. Разобраться в файловой системе Linux, правах, ссылках и терминале можно на курсе «Администратор Linux. Базовый уровень» в Otus, а посмотреть, как это выглядит в живой практике, — на открытых уроках Otus.
Смежные темы: Файловая система — первое знакомство, NTFS и FAT32: разница и особенности, Windows и другие ОС: принципы работы.
FAQ
Могут ли в одной папке лежать два файла с одинаковым именем?
Нет, имя внутри папки уникально. Но report.txt и report.pdf — разные имена, а в Linux разными будут и Report.txt с report.txt.
Занимает ли пустая папка место на диске?
Да, немного: файловая система хранит запись о каталоге (в ext4 это inode плюс, как правило, один блок в 4 КБ). Проводник показывает «0 байт», потому что считает только размер содержимого.
Что будет, если у файла нет расширения?
Содержимое не пострадает. Windows при открытии спросит, какой программой это сделать; в Linux file определит тип по содержимому, а программы откроют файл по явному указанию.



