2. Навигация в файловой системе
Файловая система Linux
Заголовок раздела «Файловая система Linux»В Linux всё — файл. Директории, устройства, сетевые сокеты — всё представлено в виде файлов в едином дереве директорий, начинающемся с корня /.
/├── bin/ → основные команды (ls, cp, mv...)├── etc/ → конфигурационные файлы├── home/ → домашние директории пользователей│ └── user/ → твоя домашняя директория (~)├── tmp/ → временные файлы├── usr/ → программы и библиотеки└── var/ → логи, базы данных, переменные данныеpwd — где я нахожусь?
Заголовок раздела «pwd — где я нахожусь?»pwd (Print Working Directory) — показывает текущую директорию.
pwdcd /etcpwd# /etcls — список файлов
Заголовок раздела «ls — список файлов»ls показывает содержимое директории.
ls # список файлов в текущей директорииls /etc # список файлов в /etcls -l # длинный формат (права, размер, дата)ls -la # включая скрытые файлы (начинаются с .)ls -lh # размеры в человекочитаемом формате (KB, MB)ls -lt # сортировка по времени измененияls -lr # обратная сортировкаls -R # рекурсивно (все поддиректории)Пример вывода ls -la:
drwxr-xr-x 2 user user 4096 Mar 15 10:30 Documents-rw-r--r-- 1 user user 1234 Mar 14 09:15 README.mdlrwxrwxrwx 1 user user 12 Mar 13 08:00 link -> /etc/hostsПервый символ: d — директория, - — файл, l — символическая ссылка.
cd — переход между директориями
Заголовок раздела «cd — переход между директориями»cd /etc # перейти в /etc (абсолютный путь)cd Documents # перейти в Documents (относительный путь)cd .. # перейти на уровень вышеcd ../.. # перейти на два уровня вышеcd ~ # перейти в домашнюю директориюcd - # перейти в предыдущую директориюcd # без аргументов — тоже в домашнююАбсолютные и относительные пути
Заголовок раздела «Абсолютные и относительные пути»# Абсолютный путь — начинается с /cd /home/user/Documents
# Относительный путь — от текущей директорииcd Documents # если ты уже в /home/usercd ./Documents # то же самое, ./ можно опуститьmkdir — создание директорий
Заголовок раздела «mkdir — создание директорий»mkdir myproject # создать директориюmkdir -p myproject/src/components # создать вложенные директорииmkdir dir1 dir2 dir3 # создать несколько сразуmkdir -m 755 scripts # создать с правами 755Флаг -p очень полезен: создаёт всю цепочку директорий, даже если промежуточные не существуют.
rmdir — удаление пустых директорий
Заголовок раздела «rmdir — удаление пустых директорий»rmdir mydir # удалить пустую директориюrmdir -p a/b/c # удалить цепочку пустых директорийВажно: rmdir работает только с пустыми директориями. Для непустых используй rm -rf (осторожно!).
touch — создание файлов
Заголовок раздела «touch — создание файлов»touch file.txt # создать пустой файлtouch file1.txt file2.txt # создать несколько файловtouch -t 202301010000 old.txt # создать с указанной датойЕсли файл уже существует, touch обновляет его время последнего изменения.
Полезные сокращения
Заголовок раздела «Полезные сокращения»| Символ | Значение |
|---|---|
~ | Домашняя директория (/home/user) |
. | Текущая директория |
.. | Родительская директория |
- | Предыдущая директория |
Tab — автодополнение
Заголовок раздела «Tab — автодополнение»Нажми Tab для автодополнения пути или команды:
- Одно нажатие — дополняет если вариант один
- Два нажатия — показывает все варианты
cd Doc<Tab> # → cd Documents/ls /etc/hos<Tab> # → ls /etc/hostsПрактика
Заголовок раздела «Практика»# 1. Определи текущую директориюpwd
# 2. Посмотри содержимое домашней директорииls -la ~
# 3. Создай структуру проектаmkdir -p ~/myproject/{src,dist,docs,tests}ls ~/myproject/
# 4. Попрыгай между директориямиcd ~/myproject/srcpwdcd ..pwdcd -
# 5. Создай несколько файловtouch ~/myproject/README.md ~/myproject/src/index.js
# 6. Убедись что файлы созданыls -la ~/myproject/Освоив эти команды, ты можешь летать по файловой системе как профи. Следующий шаг — работа с файлами!