ProgrammingЗнаков 12115Время чтения≈ 31 мин

Введение в терминал: от ls, cd, mkdir до Bash, Git и развертывания AI-инструментов

Руководство для новичков о работе с командной строкой в терминале, объясняющее основы Terminal, Shell, Bash, Zsh, пути, команды ls, cd, mkdir, git clone, npm run dev и другие базовые понятия.

Содержание · 46
  1. 1. Что такое терминал, Shell, Bash и Zsh?
  2. 2. Что такое Bash и почему о нём всё время говорят?
  3. 3. Базовая структура команды
  4. 4. Пути: «адреса» в мире командной строки
  5. 5. Часто используемые базовые команды
  6. 1. pwd: показать текущую папку
  7. 2. ls: показать файлы и папки
  8. 3. cd: смена директории
  9. 4. mkdir: создать папку
  10. 5. touch: создать пустой файл
  11. 6. cat, less, head, tail: просмотр содержимого файлов
  12. 7. cp: копирование файлов и папок
  13. 8. mv: перемещение или переименование
  14. 9. rm: удаление файлов и папок
  15. 10. echo: вывести текст
  16. 6. Базовые приёмы работы с оболочкой
  17. 1. Автодополнение по Tab
  18. 2. История команд стрелками вверх/вниз
  19. 3. Ctrl + C — прерывание программы
  20. 4. clear — очистить экран
  21. 5. history — история команд
  22. 7. Расшифровка распространённых символов
  23. 1. &&: выполнить следующую команду только после успеха предыдущей
  24. 2. ;: выполнить следующее вне зависимости от результата предыдущего
  25. 3. |: пайп (конвейер)
  26. 4. > и >>: перенаправление вывода
  27. 5. : подстановочный символ
  28. 8. На примерах понять команды
  29. 9. Как командная строка связана с GitHub?
  30. 10. Как командная строка связана с Node.js и npm?
  31. 11. Как командная строка связана с Python и AI-инструментами?
  32. 12. Частые ошибки новичков
  33. 1. Неизвестно, в какой директории вы сейчас
  34. 2. Ошибка в пути
  35. 3. Неправильный регистр в имени файла
  36. 4. Неправильное использование удаления
  37. 5. Сразу запускать скопированную неизвестную команду
  38. 6. Игнорировать сообщения об ошибках
  39. 13. Рекомендуемый порядок обучения
  40. 14. Итоги
  41. Часто задаваемые вопросы
  42. Для какого уровня разработчиков эта статья?
  43. Будут ли отличия команд между ОС?
  44. Какие AI-инструменты лучше использовать для изучения программирования?
  45. Какая привычка важнее всего при изучении программирования?
  46. Источники

Многие, впервые встречаясь с командной строкой, воспринимают её как «окно хакера»: без кнопок, без иконок, только строки команд на английском. Особенно при работе с GitHub, Vercel, Node.js, Python, Claude Code, Codex или различными AI Agent-проектами, в инструкциях часто встречаются ls, cd, mkdir, git clone, npm install, npm run dev, и новички легко теряются.

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

Эта статья объясняет терминал, Shell, Bash, Zsh, пути, часто используемые команды и их связь с GitHub, Vercel, Python, Node.js и развертыванием AI-инструментов максимально простым языком. Поняв эти понятия, вы легче разберётесь в описаниях open source-проектов, инструкциях по деплою сайтов и документации AI-инструментов.

1. Что такое терминал, Shell, Bash и Zsh?

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

НазваниеКак пониматьОписание
Terminal / ТерминалОкно для ввода командИнтерфейс командной строки, который вы открываете в macOS, Linux или Windows
ShellПрограмма для интерпретации командОтвечает за понимание введённых команд и передачу их системе
BashРаспространённый ShellВо многих Linux-учебниках Bash используется по умолчанию
ZshДругой ShellСейчас в macOS чаще встречается именно Zsh
PowerShellРаспространённый Shell в WindowsОдин из более современных вариантов командной среды Windows
Git BashСреда Unix-подобных команд для WindowsЧасто ставится вместе с Git for Windows, удобна для запуска команд из GitHub-туториалов

Самое простое объяснение:

Вы вводите команду в терминал, Shell её понимает, затем операционная система выполняет.

Поэтому фраза из многих инструкций «откройте Bash и выполните команды» для начинающих обычно означает:

Откройте терминал и введите эти команды.

Нужно учитывать, что окружение командной строки слегка отличается между системами. Команды ls, cd, mkdir, rm, часто встречающиеся в macOS/Linux гайдах, в PowerShell Windows могут выглядеть иначе; но при использовании Git Bash, WSL или Unix-подобного окружения они обычно ближе к материалам для macOS/Linux.

2. Что такое Bash и почему о нём всё время говорят?

Bash (Bourne Again Shell) — это очень распространённый интерпретатор командной строки. Множество Linux-серверов, гайдов по деплою и README в open-source-проектах по умолчанию используют Bash или синтаксис, близкий к Bash.

Многие примеры из гайдов завязаны именно на привычках Bash:

cd my-project && npm install
export OPENAI_API_KEY="your_api_key"
python main.py --input data.txt

Bash не про «сложное написание кода», а про связку нескольких системных операций: переход по папкам, установка зависимостей, выставление переменных окружения, запуск скриптов, просмотр логов, деплой проекта.

Для начинающего достаточно сначала выучить следующие типы задач:

  • Как переключаться между директориями;
  • Как просматривать файлы;
  • Как создавать, копировать, перемещать и удалять файлы;
  • Как запускать программы;
  • Как понимать параметры и опции;
  • Как читать символы &&, |, > и >>;
  • Как определить, насколько опасна команда.

Когда эти основы усвоены, можно переходить к переменным, циклам, условным конструкциям и скриптам — не поздно.

3. Базовая структура команды

Обычно полноценная команда состоит из трёх частей:

command [options] [arguments]

Например:

ls -la ~

Её можно разобрать так:

ЧастьПримерЗначение
Команда (Command)lsЧто нужно выполнить
Опции (Options)-laКак изменить поведение команды
Аргументы (Arguments)~На какой объект воздействует команда

Ещё один пример:

mkdir -p images/icons

Это значит: создать путь images/icons; если папки images нет, создать её тоже.

Часто новички пугаются из-за того, что смотрят на команду как на непонятную английскую строку. На деле если разложить по частям, почти всё становится ясно:

python main.py --input data.txt --output result.md

Эта команда означает:

  • python: запуск Python;
  • main.py: файл, который запускается;
  • --input data.txt: входной файл data.txt;
  • --output result.md: выходной файл result.md.

4. Пути: «адреса» в мире командной строки

Путь — это расположение файла или папки на компьютере.

Например, в macOS:

~/GitHub/LamjinlabWebsite

Это похоже на адрес папки:

Домашний каталог пользователя ~
└── GitHub
    └── LamjinlabWebsite

Основные символы путей:

СимволЗначениеПример
/Разделитель пути, также обозначение корня/Users/yourname
~Домашний каталог текущего пользователя~/Desktop
.Текущая директория./package.json
..Родительская директорияcd ..

Например:

cd ..

Значит перейти в папку уровнем выше.

Или:

cd ~/GitHub/LamjinlabWebsite

Значит зайти в папку GitHub/LamjinlabWebsite в домашнем каталоге.

Если путь содержит пробелы, лучше брать его в кавычки:

cd "My Projects"

Или экранировать пробел обратным слэшем:

cd My\ Projects

Для новичков вариант с кавычками обычно нагляднее и менее подвержен ошибкам.

5. Часто используемые базовые команды

Ниже команды, которые лучше всего освоить в первую очередь.

1. pwd: показать текущую папку

pwd = print working directory — вывести текущий рабочий каталог.

pwd

Пример вывода:

/Users/yourname/GitHub/LamjinlabWebsite

Если не знаете, где находитесь, сначала введите pwd.

2. ls: показать файлы и папки

ls = list — вывести содержимое текущей директории.

ls

Распространённые варианты:

ls -l

Показать подробную информацию.

ls -a

Показать скрытые файлы.

ls -la

Показать подробную информацию и скрытые файлы.

Скрытые файлы обычно начинаются с .:

.env
.gitignore
.DS_Store

.env и .env.local часто хранят API-ключи, адреса БД и другие чувствительные настройки, и такие файлы не стоит отправлять в GitHub без необходимости.

3. cd: смена директории

cd = change directory — переключение директории.

cd Desktop

Перейти в рабочий стол.

cd ..

Перейти на уровень выше.

cd ~

Перейти в домашний каталог пользователя.

cd -

Вернуться в предыдущую директорию.

Очень удобно при переключении между проектами.

4. mkdir: создать папку

mkdir = make directory — создать папку.

mkdir images

Создать папку images.

Часто используют и более безопасный вариант:

mkdir -p images/icons

Флаг -p создаёт промежуточные каталоги, если их нет; если папка уже существует, ошибка не будет.

Например:

mkdir -p ~/ai-agent-workflow-ppt/images

То есть будет создан путь:

~/ai-agent-workflow-ppt/images

Если ai-agent-workflow-ppt не существует, она будет создана автоматически.

5. touch: создать пустой файл

touch обычно используется для создания пустого файла.

touch README.md

Создаёт файл README.md.

В проектах сайтов часто встречается:

touch .env.local

Обычно это означает создание локального файла переменных окружения для API-ключей, адресов БД и прочих настроек.

6. cat, less, head, tail: просмотр содержимого файлов

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

cat README.md

Если файл короткий, cat удобен; для больших файлов лучше less с постраничным просмотром:

less README.md

Обычно используется пробел для листания и q для выхода.

Только начало файла:

head README.md

Только конец файла:

tail README.md

Для логов часто используют tail:

tail -f app.log

Флаг -f — постоянное отслеживание изменений, удобно для наблюдения за логами приложения.

7. cp: копирование файлов и папок

cp = copy — копирование.

Копирование файла:

cp a.txt b.txt

Копирование папки обычно с -r:

cp -r images images-backup

-r означает рекурсивное копирование, то есть с содержимым вложенных файлов и папок.

8. mv: перемещение или переименование

mv = move — перемещение.

Переименование файла:

mv old.md new.md

Перемещение файла:

mv article.md content/posts/ai/

То есть mv имеет два распространённых применения: перемещение и переименование.

9. rm: удаление файлов и папок

rm = remove — удаление.

Удаление файла:

rm test.txt

Удаление папки:

rm -r test-folder

С новенькими важно быть очень осторожными с такими командами:

rm -rf some-folder

-r — удаление рекурсивно, -f — без подтверждения. Эта команда не отправляет файлы в корзину, а удаляет сразу, поэтому путь нужно проверять перед запуском.

10. echo: вывести текст

echo выводит текст, часто используется вместе с > или >> для записи в файл.

echo "hello"

Вывод:

hello

Запись в файл:

echo "hello" > test.txt

В файл test.txt будет записано hello.

6. Базовые приёмы работы с оболочкой

1. Автодополнение по Tab

Введя часть команды или имени файла, нажмите Tab, и терминал попытается дописать автоматически.

Например, в текущей папке есть:

LamjinlabWebsite

Вы вводите:

cd Lam

И после Tab команда может дополниться до:

cd LamjinlabWebsite

2. История команд стрелками вверх/вниз

Стрелка ↑ показывает предыдущую команду, ↓ — следующую.

Это очень удобно при частом повторении команд, например:

npm run dev

Если вы уже запускали её, достаточно нажать ↑, чтобы вернуть строку, без повторного набора.

3. Ctrl + C — прерывание программы

Если команда зависла или вы хотите остановить текущую программу:

Ctrl + C

С его помощью можно остановить локальный dev-сервер, Python-скрипт, Node.js-приложение.

4. clear — очистить экран

Если много текста, введите:

clear

Экран очищается, работать становится удобнее.

5. history — история команд

Чтобы посмотреть ранее введённые команды, выполните:

history

Будет выведен список. Новичкам полезно сверяться, что именно вы запускали.

7. Расшифровка распространённых символов

1. &&: выполнить следующую команду только после успеха предыдущей

mkdir -p images && ls

Это означает: сначала создать папку images, и только если это удастся — выполнить ls.

2. ;: выполнить следующее вне зависимости от результата предыдущего

mkdir images; ls

Сначала пытаемся создать images, затем выполняем ls. Даже если mkdir не удался, ls всё равно может выполниться.

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

3. |: пайп (конвейер)

Конвейер передаёт вывод первой команды следующей:

ls | grep "mdx"

Сначала выводит список файлов текущей папки, затем отбирает строки с mdx.

4. > и >>: перенаправление вывода

> пишет вывод в файл, перезаписывая его:

echo "hello" > test.txt

>> дописывает в конец файла:

echo "world" >> test.txt

Новички должны помнить: > перезаписывает файл, поэтому нужно быть внимательнее.

5. *: подстановочный символ

* означает матч нескольких символов.

Например:

ls *.md

Показать все файлы с расширением .md в текущей директории.

Или:

rm *.log

Удалить все .log в текущей папке. Это потенциально опасная команда — убедитесь, что находитесь в правильной директории.

8. На примерах понять команды

Смотрите на команду:

mkdir -p ~/ai-agent-workflow-ppt/images && ls ~/ai-agent-workflow-ppt/

Её можно разложить на две части:

mkdir -p ~/ai-agent-workflow-ppt/images

Это создаёт папку images внутри проекта.

ls ~/ai-agent-workflow-ppt/

Это показывает содержимое папки ai-agent-workflow-ppt.

&& между ними означает:

Выполнить просмотр только после успешного создания.

То есть вся команда означает:

Сначала создать папку images, затем посмотреть содержимое каталога проекта.

Такие команды обычно безопасны, так как они только создают папку и читают структуру, без удаления.

9. Как командная строка связана с GitHub?

GitHub — платформа для размещения open-source-проектов, а Git — инструмент контроля версий. Большинство проектов на GitHub нужно сначала скачать на локальную машину.

Самая частая команда:

git clone https://github.com/example/project.git

Она копирует удалённый репозиторий GitHub на ваш компьютер.

Затем обычно заходят в каталог:

cd project

И смотрят файлы:

ls

В большинстве README вы найдёте:

git clone https://github.com/example/project.git
cd project
npm install
npm run dev

Новичкам не стоит запускать всё сразу. Лучше понимать по шагам:

1. git clone: скачать проект; 2. cd project: перейти в каталог проекта; 3. npm install: установить зависимости; 4. npm run dev: запустить локальный сервер разработки.

Тогда понятно, что делает каждый шаг, и проще диагностировать ошибки.

10. Как командная строка связана с Node.js и npm?

Много фронтенд-проектов, Next.js и проектов на Vercel используют Node.js и npm.

npm — это менеджер пакетов в экосистеме Node.js. Типичные задачи: установка зависимостей, запуск скриптов, запуск dev-сервера, сборка проекта.

Частые команды:

npm install

Установка зависимостей проекта. Обычно читает package.json в текущей директории.

npm run dev

Запускает скрипт dev из package.json, обычно это запуск локального dev-сервера.

npm run build

Запускает сборочный скрипт, обычно для production-сборки.

npm start

Запускает скрипт старт, поведение зависит от проекта и его package.json.

Когда вы видите npm run dev, не нужно просто выучить команду наизусть. Откройте package.json и посмотрите, как у него настроено:

{
  "scripts": {
    "dev": "next dev",
    "build": "next build",
    "start": "next start"
  }
}

Это значит:

  • npm run dev фактически запускает next dev;
  • npm run build фактически запускает next build;
  • npm start фактически запускает next start.

С этим пониманием туториалы по frontend-проектам становятся заметно понятнее.

11. Как командная строка связана с Python и AI-инструментами?

Если вы просто читаете статьи в браузере, возможно, командная строка вам не нужна. Но если хотите использовать больше AI-инструментов, open-source-проекты и автоматизированные пайплайны, без неё почти не обойтись.

Например:

python main.py

Запуск Python-скрипта.

python -m venv .venv

Создание виртуального окружения Python.

pip install -r requirements.txt

Установка зависимостей Python-проекта.

vercel deploy

Развёртывание веб-проекта.

claude

Может запускать инструмент вроде Claude Code — зависит от способа установки.

Многие AI Agent, Claude Code, Codex, Cursor, Next.js, FastAPI и проекты на Vercel в итоге делают то же самое через терминал: установка, запуск, отладка и деплой.

Поэтому изучать командную строку — не ради «быть профи», а ради реального контроля над своими проектами.

12. Частые ошибки новичков

1. Неизвестно, в какой директории вы сейчас

Решение:

pwd

Сначала уточните текущую позицию.

2. Ошибка в пути

Решение: чаще используйте автодополнение Tab, меньше вручную печатайте длинные пути.

3. Неправильный регистр в имени файла

Во многих системах регистр символов в имени может влиять на выполнение.

Например:

README.md
readme.md

Это могут быть разные файлы.

4. Неправильное использование удаления

Особенно:

rm -rf

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

5. Сразу запускать скопированную неизвестную команду

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

  • Может ли она удалить файлы?
  • Может ли она перезаписать файл?
  • Может ли она отправить чувствительные данные во внешнюю систему?

Если в команде есть rm -rf, sudo, curl ... | bash, chmod 777, >, стоит быть особенно внимательным.

6. Игнорировать сообщения об ошибках

Многие ошибки уже прямо подсказывают причину. Например:

No such file or directory

Обычно значит, что файла или папки нет — вероятно, проблема в пути.

Permission denied

Обычно значит нет прав на выполнение или доступ.

command not found

Обычно команда не найдена: возможно, инструмент не установлен или PATH не настроен.

EADDRINUSE

Часто появляется в локальном dev-сервере: порт уже занят, например 3000 уже используется другим процессом.

13. Рекомендуемый порядок обучения

Если вы начинаете с нуля, рекомендую такой порядок:

1. Сначала выучите pwd, ls, cd и поймите, где вы находитесь; 2. Затем mkdir, touch, cp, mv, чтобы понять, как создавать и перемещать файлы; 3. Потом осторожно изучите rm, чтобы знать, как удалять, но не злоупотреблять; 4. Затем cat, less, head, tail, чтобы читать файлы и логи; 5. Далее &&, |, >, >>, чтобы понимать, как команды связаны между собой; 6. И в конце git clone, npm install, npm run dev, python main.py, чтобы применять командную строку в реальных проектах.

Освоив это, вы сможете понимать большую часть базовых команд из README множества GitHub-проектов.

14. Итоги

Командная строка — это не магия и не инструмент только для «профессиональных» разработчиков. Это просто другой способ работать с компьютером.

Её можно представить так:

Графический интерфейс управляет компьютером через мышь и кнопки;
Командная строка управляет компьютером через текст и команды.

Когда вы уверенно используете ls, cd, mkdir, pwd, git clone, npm run dev, дальнейшее изучение GitHub, Vercel, Python, Node.js, Claude Code и AI Agent-проектов станет заметно проще.

Важнее всего не выучить все команды разом, а постепенно привыкать к ним в практике. Когда вы не понимаете команду, разберите её по частям: что она делает, какие опции переданы, на какой объект она воздействует. Тогда командная строка перестанет быть набором непонятных символов и станет управляемым, предсказуемым и удобным инструментом.

Часто задаваемые вопросы

Для какого уровня разработчиков эта статья?

Можно ориентироваться на раздел «Целевая аудитория» в основном тексте. В разделе «Программирование» сайта публикуются материалы от начального уровня до тем по AI-программированию, и у каждой статьи своя предпосылка.

Будут ли отличия команд между ОС?

Да. Терминальные окружения, формат путей и синтаксис команд в macOS, Linux и Windows отличаются. Если статья не указала конкретную платформу, лучше сверять с официальной документацией и адаптировать под свою систему.

Какие AI-инструменты лучше использовать для изучения программирования?

На данный момент Claude Code и Codex считаются одними из самых сильных AI-инструментов для программирования: они объясняют код, подсказывают логику, помогают с отладкой и генерацией скриптов. Обзор см. в статьях CC Switch Обзор инструментов и Vibe Coding Сборник вопросов для собеседования.

Какая привычка важнее всего при изучении программирования?

Практика важнее чтения инструкций. Лучше как можно раньше взять реальный маленький проект и работать с ним: сталкиваться с ошибками, читать документацию и код, а не только изучать теорию.

Источники

Терминал — это базовая среда для AI-инструментов программирования. Если хотите подробнее узнать, как использовать Claude Code или Codex в терминале, см. CC Switch Введение в инструменты и Vibe Coding Сборник вопросов для собеседования.

Share

Поделиться статьёй