# Как выучить команды терминала с помощью карточек в 2026 году: Bash, Git и CLI-сценарии, которые остаются в памяти

*2026-06-07*

Во вторник я снова завис на `git restore --staged README.md`. Я хорошо понимал, что хочу сделать: убрать файл из staged, сохранить правки и идти дальше. Но все равно пришлось остановиться и снова искать нужный флаг.

Об этом и статья. В 2026 году получить помощь по терминалу стало легче, чем когда-либо. [Study Mode в ChatGPT](https://help.openai.com/en/articles/11780217-chatgpt-study-mode-faq), [обновление Codex от 16 апреля 2026 года](https://openai.com/index/codex-for-almost-everything/) и [релиз GitHub Copilot CLI GA от 25 февраля 2026 года](https://github.blog/changelog/2026-02-25-github-copilot-cli-is-now-generally-available/) заметно ускоряют момент, когда вы выбираетесь из тупика. Но вспомнить ту же самую команду через неделю уже отдельная задача.

Именно тут помогают **карточки для команд терминала**. Работайте как обычно, отмечайте команды, которые постоянно забываются, превращайте в карточки только их и дайте FSRS решать, когда пора повторять. Вам не нужно выучить всю оболочку целиком. Нужно перестать заново разбираться в одних и тех же 30-50 ситуациях выбора команды.

![Теплый стол разработчика с карточками по командам терминала, блокнотом и размытым окном терминала на ноутбуке](/blog/how-to-learn-terminal-commands-with-flashcards.png)

## Почему в 2026 году это стало важнее

Раньше обучение терминалу обычно сводилось к смеси man pages, сохраненных сниппетов и одной шпаргалки, которую вы когда-нибудь точно собирались перечитать.

Теперь помощь везде:

- AI-репетиторы могут вас опрашивать, а не только объяснять
- агенты для программирования могут показать разницу между двумя командами прямо в вашем реальном репозитории
- `--help`, `help` и `git help` легко встроить в сценарий создания карточек
- помощники для терминала настолько упростили поиск команд, что люди перестают специально закреплять их в памяти

Последний пункт важнее всего.

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

- какая команда Git убирает файл из staged, но не выбрасывает правки
- действительно ли `grep -R` делает именно тот рекурсивный поиск, который вам нужен
- что означает `??` в `git status --short`
- нужен ли вам `source ~/.zshrc` или достаточно открыть новый shell

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

## Что вообще заслуживает карточки

Большинство промахивается в одну из двух сторон.

Люди либо загружают в AI гигантскую шпаргалку по Bash или Git и получают 200 карточек, либо вообще отказываются что-то запоминать, потому что "я всегда могу это загуглить". Оба подхода пропускают один и тот же фильтр: частота плюс неудобство.

Карточка нужна, когда одновременно верны две вещи:

1. Команда с высокой вероятностью еще понадобится вам.
2. Если вы ее забудете, реальная работа замедлится.

Хорошие **карточки по Bash** и **карточки по командам Git** обычно появляются из таких категорий:

- задачи: какая команда делает то, что вам нужно
- путаница между похожими командами: `git switch` против `git checkout`
- значение флага: что меняется, когда вы добавляете `-R`, `-c` или `--staged`
- чтение вывода: что означает символ или строка статуса
- повторяющаяся настройка окружения: перезагрузить конфиг shell, экспортировать переменную, сделать скрипт исполняемым
- исправление ошибки: починить промах, который вы снова делаете в спешке

Плохие карточки обычно выглядят так:

- все флаги из `tar --help`
- полные пересказы man page, скопированные строка за строкой
- команды, которые вы используете раз в год
- длинные блоки синтаксиса без привязки к задаче
- карточки, которые проверяют только узнавание, потому что вопрос уже почти выдает ответ

Если забытая команда не будет вас раздражать на следующей неделе, ей, скорее всего, не место в колоде.

## Форматы карточек, которые лучше всего помогают запоминать команды

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

### Используйте вопросы, которые начинаются с задачи

Это самый надежный формат:

- Лицевая сторона: Вы хотите создать новую Git-ветку `fix/login-loop` и сразу перейти на нее. Какую команду вы запускаете?
- Обратная сторона: `git switch -c fix/login-loop`

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

### Используйте карточки "сравни и выбери"

Этот формат отлично работает для Git и shell-команд, которые легко спутать:

- Лицевая сторона: Вы хотите убрать `README.md` из staged, не выбрасывая изменения в файле. Нужна `git restore` или `git restore --staged`?
- Обратная сторона: `git restore --staged README.md`

### Используйте карточки на чтение вывода

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

- Лицевая сторона: Что означает `?? notes.txt` в `git status --short`?
- Обратная сторона: Файл не отслеживается.

- Лицевая сторона: Что означает первый символ `d` в `drwxr-xr-x` из `ls -l`?
- Обратная сторона: Это каталог.

### Используйте карточки "ошибка и исправление"

Иногда вся проблема в одном пропущенном символе:

- Лицевая сторона: Вы хотите сделать `deploy.sh` исполняемым. Какую команду вы запускаете?
- Обратная сторона: `chmod +x deploy.sh`

- Лицевая сторона: Какой обычный шаг нужен после редактирования `.zshrc`, если вы хотите применить изменение в текущем shell?
- Обратная сторона: `source ~/.zshrc`

### Держите каждую карточку настолько маленькой, чтобы ее можно было оценить мгновенно

Обычно карточка по терминалу должна проверять что-то одно:

- одну команду
- один флаг
- один символ в выводе
- одно различие

Если на обратной стороне нужен абзац, разбейте карточку. За более строгими правилами лучше сразу идти в статью [Как делать карточки лучше](/ru/blog/how-to-make-better-flashcards/).

## Пять конкретных примеров, которые я бы действительно оставил

Это именно те карточки, которые переживают повторение, потому что попадают в обычные рабочие заминки в терминале:

- Лицевая сторона: Вы хотите рекурсивно искать `TODO` в текущей директории через `grep`. Какой флаг здесь самый важный?
  Обратная сторона: `-R`
- Лицевая сторона: Что означает `M` во второй колонке в ` M README.md` из `git status --short`?
  Обратная сторона: Файл изменен в рабочем дереве.
- Лицевая сторона: Вы хотите вывести тип текущего shell из переменной окружения. Какую команду вы бы использовали?
  Обратная сторона: `echo $SHELL`
- Лицевая сторона: Вы хотите вывести список всех локальных веток. Какую команду Git вы запускаете?
  Обратная сторона: `git branch`
- Лицевая сторона: Вы хотите найти файлы с именем `notes.md` в текущей директории. Какая базовая форма команды нужна?
  Обратная сторона: `find . -name "notes.md"`

Ничего выдающегося. В этом и смысл. Полезные колоды по командам строятся из самых обычных рабочих остановок.

## Собирайте карточки из реальных источников, а не из смутных воспоминаний

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

Источники получше у вас уже перед глазами:

- встроенные команды Bash через `help`
- вывод `--help` у конкретной команды
- документация Git через [`git help`](https://git-scm.com/docs/git-help)
- официальный [GNU Bash Reference Manual](https://www.gnu.org/software/bash/manual/bash.html)
- ваша собственная история shell
- шаги настройки репозитория, которые вы повторяете снова и снова
- команды, про которые AI-ассистенту пришлось напомнить вам дважды за одну неделю

Вот простой проход по источникам:

```bash
help cd
help export
grep --help
git help restore
git help switch
git status --short
```

Вам не нужно превращать эти источники в полную колоду. Нужны только те куски, которые снимают повторяющуюся путаницу.

### Сначала опирайтесь на собственные ошибки

Это до сих пор самый полезный источник.

Например:

- вы забыли, что `git restore .` выбрасывает изменения в рабочем дереве
- вы снова перепутали `git fetch` и `git pull`
- вам опять пришлось искать `find . -name`
- вы узнаете `chmod +x`, когда видите его, но все еще не вспоминаете достаточно быстро
- вы постоянно забываете, как перезагрузить конфиг shell в текущей сессии

Это намного лучшие заготовки для карточек, чем любой список "100 главных команд терминала", потому что они уже доказали свою важность именно в вашем процессе.

Если в ваш учебный цикл уже входят AI-сессии в стиле репетитора, до этапа с карточками сюда естественно подходит статья [Как использовать AI для active recall в 2026 году](/ru/blog/how-to-use-ai-for-active-recall/).

## Пусть AI делает черновики, а потом режьте без жалости

AI полезен, но в основном как помощник по оформлению.

Давайте ему узкий вход и узкую задачу:

> Преврати эти ошибки в командах и фрагменты справки в обычные карточки с лицевой и обратной стороной. Одно решение по команде на карточку. Предпочитай вопросы от задачи, карточки "сравни и выбери" и карточки на чтение вывода. Пропускай все, что встречается редко, дублируется или и так очевидно.

Это хорошо работает с:

- вставленным фрагментом `git help`
- коротким списком команд, которые вы снова искали на этой неделе
- заметками из парной работы
- расшифровкой сессии, где вы кодили вместе с агентом

Что обычно дает плохой результат, так это просьба сделать "полную колоду по Bash" или "все важные команды Git". Получается большая колода, которая один день кажется продуктивной, а потом полгода раздражает.

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

Если AI уже наделал лишнего, дальше лучше читать [Как быстрее повторять карточки](/ru/blog/how-to-review-flashcards-faster/) и [Сколько новых карточек в день](/ru/blog/how-many-new-flashcards-per-day/).

## Организуйте по задачам, а не по алфавиту

Алфавитные списки команд выглядят аккуратно и плохо переживают повторение.

Реальная работа ближе к таким кластерам:

- восстановление в Git
- работа с ветками
- права на файлы
- настройка shell
- поиск по логам
- поиск файлов
- онбординг в репозитории

Кластер "восстановление в Git" может включать:

- убрать из staged без потери правок
- выбросить локальные изменения в файле
- посмотреть, что изменилось, перед reset
- восстановиться после перехода не на ту ветку

Кластер "настройка shell" может включать:

- перезагрузить `.zshrc`
- вывести переменную окружения
- экспортировать значение для текущей сессии
- проверить, какой shell сейчас активен

Такая структура совпадает с реальными ситуациями, где и нужна память. Если ваша колода постоянно расползается в кучу, дальше стоит читать [Как организовать карточки](/ru/blog/how-to-organize-flashcards/).

## Повторяйте через FSRS, но не кормите его мусором

FSRS полезен, потому что расставляет повторы в зависимости от того, насколько хорошо вы помните конкретную карточку. Лучший старт по деталям расписания: официальный [FSRS wiki](https://github.com/open-spaced-repetition/fsrs4anki/wiki).

Но даже хороший планировщик не спасает слабые карточки.

Если карточка по команде размыта, перегружена или настолько редкая, что вам все равно, FSRS красиво поставит ей интервалы, а повторение все равно будет ощущаться бессмысленным.

Более полезный цикл выглядит так:

1. Замечайте пропущенные команды во время реальной работы.
2. Превращайте в карточки только повторяющиеся промахи.
3. Каждый день повторяйте небольшое число новых карточек.
4. Удаляйте карточки, которые после нескольких повторений так и не оказались важными.
5. Добавляйте новые карточки только тогда, когда та же командная проблема возвращается снова.

Именно последний шаг удерживает колоду в честном состоянии.

## Практичный сценарий на 20 минут

Если бы я собирал это с нуля, я бы делал такой проход один или два раза в неделю.

### 1. Соберите пять недавних промахов

Доставайте их из:

- истории shell
- заметок по настройке репозитория
- команд, которые вы снова искали
- AI- или агентских сессий, где вам понадобилась помощь по командам

### 2. Проверьте реальный источник

Прежде чем писать карточку, откройте настоящий источник:

- `help` для встроенных команд Bash
- `--help` для обычных CLI-инструментов
- `git help <command>` для Git

Так вы не поймаете классическую ошибку в духе "кажется, этот флаг означает...".

### 3. Сделайте 5-10 карточек-кандидатов

Держите их маленькими. Перегруженные карточки разбивайте сразу.

### 4. Удалите все, что не будет вас раздражать, если вы это забудете

Здесь и рождается большая часть качества.

### 5. Перенесите выжившие карточки в ту колоду, которой вы уже доверяете

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

## Где здесь подходит Flashcards Open Source App

[Flashcards Open Source App](/ru/) хорошо подходит к такому сценарию, потому что обучение терминалу и так узкое и почти целиком текстовое.

Здесь можно:

- делать обычные карточки с лицевой и обратной стороной для командных решений
- повторять через FSRS вместо угадывания интервалов
- использовать AI-чат со вставленным текстом или файловыми вложениями, когда источник неаккуратный
- держать отдельные колоды для Git, настройки shell, работы с API или онбординга в репозитории

Если вам сначала нужен обзор продукта, короткая версия лежит на странице [Возможности](/ru/features/). Если нужен самый быстрый старт, откройте [Начало работы](/ru/docs/getting-started/). Если нужны детали для сценария с агентами, опубликованный процесс описан в [Справочнике API](/ru/docs/api/). Если хотите запускать весь стек у себя, есть и [Руководство по самостоятельному хостингу](/ru/docs/self-hosting/).

Это хорошо ложится на учебу для разработчиков, потому что запоминание команд редко начинается с аккуратных конспектов. Обычно все начинается с инструкций в репозитории, ошибок в терминале, скопированных фрагментов справки и одной неуклюжей команды, которую вы уже устали забывать.

## Правило, которое стоит оставить

Не пытайтесь выучить весь терминал.

Запоминайте те командные решения, которые снова и снова прерывают вашу работу.

Тогда запрос **как выучить команды терминала** перестает означать "сохранить еще одну шпаргалку" и начинает означать, что вы действительно можете вспомнить нужную команду, когда курсор уже мигает в терминале.

Если это еще и пересекается с подготовкой к собеседованиям, ближайший связанный материал на сайте: [Как использовать флешкарточки для собеседований по программированию](/ru/blog/how-to-use-flashcards-for-coding-interviews/).

---
*[Открыть оформленную HTML-версию этой страницы](https://flashcards-open-source-app.com/ru/blog/how-to-learn-terminal-commands-with-flashcards/)*

*AI-агенты могут создать аккаунт пользователя в этом сервисе, начиная с `GET https://api.flashcards-open-source-app.com/v1/`.*

*Совет: добавьте `.md` к любому URL на https://flashcards-open-source-app.com, чтобы получить чистую Markdown-версию страницы.*