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

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

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

Многие, впервые встречаясь с командной строкой, воспринимают её как «окно хакера»: без кнопок, без иконок, только строки команд на английском. Особенно при работе с 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

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