Навигация по файловой системе
Навигация по файловой системе в терминале — перемещение между директориями и просмотр содержимого с помощью команд cd, ls/dir, pwd без GUI.
Зачем нужно
Разработчику постоянно нужно работать с файловой системой в терминале: переходить в проект, просматривать структуру папок, искать файлы. Знание навигационных команд ускоряет работу и необходимо для использования git, npm, скриптов сборки.
Где используется
- Переход в папку проекта перед запуском dev-сервера или git команд
- Просмотр структуры проекта без IDE
- CI/CD скрипты — навигация между директориями в pipeline
- SSH-сессии на удалённых серверах без GUI
Основные команды
Текущая директория и переходы
# Показать текущую директорию (print working directory)
pwd
# /home/user/projects/my-app
# Перейти в директорию
cd /home/user/projects # абсолютный путь
cd my-app # относительный путь
cd .. # на уровень вверх
cd ../sibling-folder # вверх и в соседнюю папку
cd ~ # домашняя директория
cd - # предыдущая директория (удобно для переключения)
Просмотр содержимого
# Список файлов (Unix/macOS)
ls # обычный список
ls -l # подробный: права, размер, дата
ls -la # включая скрытые файлы (начинаются с .)
ls -lh # размер в человекочитаемом формате (KB, MB)
ls src/ # содержимое конкретной папки
# Windows (PowerShell / cmd)
dir
dir /a # включая скрытые
# Git Bash на Windows — используй ls как в Unix
ls -la
Дерево директорий
# Структура папок (если установлен tree)
tree
tree -L 2 # максимальная глубина 2
tree -I node_modules # исключить node_modules
# Альтернатива без tree
find . -type d -not -path '*/node_modules/*' | head -20
Поиск файлов
# find — поиск по имени и типу
find . -name "*.ts" # все .ts файлы
find . -name "index.ts" # конкретный файл
find . -type d -name "src" # директории с именем src
find . -type f -newer package.json # файлы новее package.json
# Поиск содержимого в файлах
grep -r "TODO" ./src # рекурсивно по тексту
grep -rl "import React" ./src # только имена файлов
Полезные паттерны
# Переход в проект и сразу открыть VS Code
cd ~/projects/my-app && code .
# Быстро посмотреть структуру нового проекта
ls -la && cat package.json
# История команд для повторного использования
history | grep "cd ~/projects"
# Автодополнение — Tab для имён файлов и директорий
cd pro[Tab] # → cd projects/
Специальные пути
. — текущая директория
.. — родительская директория
~ — домашняя директория (/home/username или C:/Users/username)
/ — корень файловой системы (Unix)
- — предыдущая директория (только cd -)
Частые ошибки
cd my folder— пробел в имени разбивает аргумент. Решение:cd "my folder"илиcd my\ folderlsне работает в cmd.exe — использоватьdir. В Git Bash и PowerShelllsработает- Путь начинается с
/на Windows — абсолютный Unix-путь не работает, нуженC:/Users/...или~/ - Забывают про
cd -— команда мгновенно возвращает в предыдущую директорию