Терминал — итоги
Кратко — что стоит унести из раздела "Терминал". Если пункт кажется туманным — откройте указанную главу или оглавление.
FAQ — Часто задаваемые вопросы
Типичные ошибки и ситуации в командной строке. Ниже также — формулировки, как в поиске Google; краткий ответ и ссылка на главу. Команды "наизусть" — в чек-листе.
Вопрос. Ввёл команду — "command not found" / "не является внутренней командой".
Ответ. Программа не в PATH или не установлена; опечатка в имени. Проверьте which/where, полный путь, установку пакета. Подробнее здесь — что такое терминал, Linux, Windows.
Вопрос. Скопировал команду из туториала — сразу Permission denied или "Отказано в доступе".
Ответ. Нужны права на файл или sudo/admin; на Windows — запуск PowerShell от администратора только если задача этого требует. Подробнее здесь — Linux, Windows.
Вопрос. cd в папку с пробелами — "No such file or directory".
Ответ. Путь с пробелами берите в кавычки: cd "Program Files". Обратный слэш в PowerShell экранирует иначе, чем в Bash. Подробнее здесь — знаки препинания, Windows.
Вопрос. rm -rf / или аналог из чата — можно "для шутки" на виртуалке?
Ответ. Даже на ВМ привыкать к стоп-листу опасных команд — перенос ошибки на боевой сервер стоит секунд. Сначала прочитайте, что делает каждый флаг. Подробнее здесь — опасные скрипты.
Вопрос. curl ... | bash — быстрый установщик, все так делают?
Ответ. Вы выполняете непроверенный скрипт от имени вашего пользователя. Скачайте, прочитайте, только потом запускайте — или используйте пакетный менеджер. Подробнее здесь — curl, опасные скрипты.
Вопрос. Команда "зависла" — терминал не реагирует на ввод.
Ответ. Прервите Ctrl+C (SIGINT); если не помогло — Ctrl+Z и kill процесса. Ctrl+Z только приостанавливает — не путать с отменой. Подробнее здесь — знаки препинания, Linux.
Вопрос. Запустил ping без остановки — как выйти?
Ответ. Ctrl+C в Linux/macOS; в Windows ping сам останавливается после N пакетов, иначе тоже Ctrl+C. Подробнее здесь — Linux, Windows.
Вопрос. Вывод команды "улетел" за экран — как пролистать?
Ответ. Конвейер в less: command | less; в PowerShell command | Out-Host -Paging. Или перенаправьте в файл. Подробнее здесь — знаки препинания.
Вопрос. > перезаписал файл — можно вернуть содержимое?
Ответ. Перенаправление > затирает файл до запуска команды. Если команда ничего не вывела — файл пуст. Восстановление из бэкапа или VCS. Используйте >> для дописывания. Подробнее здесь — знаки препинания.
Вопрос. Скрипт .sh двойной клик — открывается блокнот, не выполняется.
Ответ. На Windows ассоциация с редактором; на Linux нужны chmod +x и запуск из терминала ./script.sh с shebang. Подробнее здесь — скрипты Unix, что такое терминал.
Вопрос. PowerShell ругается "execution policy" — скрипт не стартует.
Ответ. Политика блокирует неподписанные .ps1. Для своих скриптов — RemoteSigned для текущего пользователя; не ослабляйте политику глобально без понимания. Подробнее здесь — PowerShell.
Вопрос. В Git Bash команда работает, в CMD — нет (и наоборот).
Ответ. Разные оболочки и синтаксис — ls vs dir, пути / vs \. Выберите одну оболочку под задачу или используйте полные имена. Подробнее здесь — что такое терминал, Windows.
Вопрос. sudo просит пароль — я же администратор Windows?
Ответ. В Linux sudo — отдельная проверка, пароль пользователя, не "галочка UAC". Root-логин часто отключён — это норма. Подробнее здесь — Linux.
Вопрос. SSH: "Host key verification failed" после переустановки сервера.
Ответ. Ключ сервера в ~/.ssh/known_hosts устарел. Удалите старую строку для этого IP/hostname (осторожно с MITM — убедитесь, что сервер ваш). Подробнее здесь — PuTTY и SSH.
Вопрос. Подключился по SSH — "Connection timed out".
Ответ. Firewall, неверный IP/порт 22, сервер выключен, домашний роутер без проброса. Проверьте ping, порт через Test-NetConnection / nc. Подробнее здесь — PuTTY и SSH, curl.
Вопрос. python script.py — Python 2, а нужен 3 (или наоборот).
Ответ. Явно вызывайте python3 или venv; проверьте which python. На Windows — py launcher py -3. Подробнее здесь — что такое терминал, PATH.
Вопрос. Установил программу через apt, команда всё равно не находится.
Ответ. Обновите hash оболочки hash -r или откройте новый терминал; проверьте, что пакет установил бинарник в /usr/bin. Подробнее здесь — Linux.
Вопрос. npm install падает с "EACCES" — что не так?
Ответ. Не запускайте npm с sudo — ломает права. Исправьте владельца ~/.npm или используйте nvm. Подробнее здесь — Linux, запуск приложений.
Вопрос. Переменная окружения задал через export, после закрытия терминала пропала.
Ответ. export действует в текущей сессии. Для постоянной — пропишите в ~/.bashrc, ~/.profile или системные настройки Windows. Подробнее здесь — Linux, Windows.
Вопрос. make говорит "No rule to make target".
Ответ. Нет цели в Makefile или вы не в той директории. Запускайте из корня проекта; make help если есть. Подробнее здесь — утилита make.
Вопрос. git push из терминала просит логин каждый раз.
Ответ. Настройте SSH-ключ или credential helper, personal access token вместо пароля GitHub. Подробнее здесь — PuTTY и SSH, скрипты Unix.
Вопрос. История команд (history) — случайно показал пароль соседу.
Ответ. Пароли в CLI не передают аргументом (-p secret) — они попадают в history. Используйте prompt или переменные окружения; очистите history. Подробнее здесь — опасные скрипты.
Вопрос. Терминал VS Code и системный — разные результаты одной команды.
Ответ. Разный PATH, shell profile, рабочая директория. Сравните echo $PATH / $env:PATH и pwd. Подробнее здесь — что такое терминал.
Вопрос. docker run — "Cannot connect to the Docker daemon".
Ответ. Служба Docker не запущена или пользователь не в группе docker. Запустите Docker Desktop / systemctl start docker. Подробнее здесь — Linux, справочник утилит.
Вопрос. Кодировка в выводе — "кракозябры" вместо русского текста.
Ответ. Несовпадение UTF-8 и Windows-1251 в консоли. В PowerShell: [Console]::OutputEncoding; в Linux обычно UTF-8. Подробнее здесь — Windows, что такое терминал.
Вопрос. ИИ-агент прислал длинный скрипт — запускать одной командой?
Ответ. Разберите построчно: удаление, форматирование диска, curl наружу, изменение firewall. Сверьте со стоп-листом. Подробнее здесь — опасные скрипты, PowerShell.
Вопрос. "Работает в терминале преподавателя, у меня ModuleNotFoundError".
Ответ. Другой venv или версия Python. Активируйте окружение (source venv/bin/activate) или установите зависимости из requirements.txt. Подробнее здесь — запуск приложений, Linux.
Вопрос. Как открыть командную строку CMD в Windows 11?
Ответ. Win + R → cmd, или Пуск → "Терминал"/"cmd", или Win + X → Terminal. Для админки — "от имени администратора". Подробнее здесь — что такое терминал, Windows.
Вопрос. PowerShell или CMD — что использовать в 2025?
Ответ. PowerShell — основной путь Microsoft: объекты, скрипты, админка. CMD — legacy и простые batch. Подробнее здесь — PowerShell, Windows.
Вопрос. Базовые команды Linux для начинающих — ls cd pwd mkdir?
Ответ. pwd — где вы; ls — список; cd — перейти; mkdir — папка. Шпаргалка — в справочнике. Подробнее здесь — Linux.
Вопрос. Как удалить папку рекурсивно Linux rm -rf безопасно?
Ответ. Сначала ls путь, потом rm -r имя без слэша в корне. Никогда rm -rf /. Подробнее здесь — Linux, опасные скрипты.
Вопрос. Как узнать IP-адрес в терминале Windows и Linux?
Ответ. Windows: ipconfig или Get-NetIPAddress. Linux: ip a или hostname -I. Подробнее здесь — Windows, Linux.
Вопрос. curl и wget — как скачать файл из интернета в консоли?
Ответ. curl -O URL или wget URL. Для API — curl -X GET с заголовками. Подробнее здесь — утилита curl, Linux.
Вопрос. SSH подключение к серверу — команда для Linux и Windows?
Ответ. ssh user@host -p 22. Ключ: ssh -i ~/.ssh/id_rsa user@host. Windows 10+ — встроенный OpenSSH. Подробнее здесь — PuTTY и SSH.
Вопрос. Bash-скрипт .sh — как написать и запустить первый?
Ответ. Shebang #!/bin/bash, chmod +x script.sh, ./script.sh. Подробнее здесь — скрипты Unix.
Вопрос. grep и find — как найти файл или текст в Linux?
Ответ. find . -name "*.log" — файл по имени; grep -r "error" . — строка внутри файлов. На Windows без WSL — findstr / Select-String или нативный grep через Microsoft Coreutils (Preview). Подробнее — поиск текста в файлах, Linux, Windows, справочник утилит.
Вопрос. chmod 777 — можно ли так открыть права на папку?
Ответ. 777 = все могут всё — риск на сервере. Обычно 755 для каталогов, 644 для файлов. Подробнее здесь — Linux.
Вопрос. sudo команда — что делает и когда спрашивает пароль?
Ответ. Запуск от root на одну команду. Пароль — ваш пользовательский, не root-логин. Подробнее здесь — Linux.
Вопрос. Как перезагрузить и выключить Linux из терминала?
Ответ. sudo reboot, sudo shutdown -h now. На сервере — согласуйте с коллегами. Подробнее здесь — Linux.
Вопрос. npm command not found — как установить Node.js?
Ответ. С официального сайта, nvm, apt install nodejs или winget/choco на Windows. Перезапустите терминал. Подробнее здесь — Linux, Windows.
Вопрос. git clone — как скачать репозиторий с GitHub?
Ответ. git clone https://github.com/user/repo.git → cd repo. SSH — через ключ. Подробнее здесь — скрипты Unix, PuTTY и SSH.
Вопрос. docker run hello-world — первый запуск Docker?
Ответ. Установите Docker Desktop, затем docker run hello-world. Если daemon не запущен — см. службу. Подробнее здесь — справочник утилит.
Вопрос. top htop — как посмотреть загрузку CPU и память?
Ответ. top или htop — процессы в реальном времени. Windows: Get-Process, Task Manager из CLI ограничен. Подробнее здесь — Linux, Windows.
Вопрос. tail -f — смотреть лог файл в реальном времени?
Ответ. tail -f /var/log/nginx/access.log — новые строки по мере записи. Ctrl+C — выход. Подробнее здесь — Linux.
Вопрос. tar zip архив — создать и распаковать в Linux?
Ответ. tar -czvf arc.tar.gz папка, распаковка tar -xzvf arc.tar.gz. Zip: unzip file.zip. Подробнее здесь — Linux.
Вопрос. Как добавить программу в PATH Windows и Linux?
Ответ. Linux: строка в ~/.bashrc export PATH="$PATH:/opt/bin". Windows: Параметры → Переменные среды → Path. Подробнее здесь — что такое терминал, Linux.
Вопрос. Конвейер pipe | в bash — как фильтровать вывод?
Ответ. cat file | grep error | wc -l — stdout одной команды → stdin другой. Подробнее здесь — знаки препинания.
Вопрос. man и --help — как читать справку по команде?
Ответ. man ls, git --help. PowerShell: Get-Help Get-Process. Подробнее здесь — Linux, PowerShell.
Вопрос. make install — что делает утилита make?
Ответ. Читает Makefile, собирает цели (build, test, install). Не замена shell, а оркестратор команд. Подробнее здесь — утилита make.
Вопрос. SSH tunnel port forwarding — доступ к БД через сервер?
Ответ. ssh -L 5432:localhost:5432 user@server — локальный порт проброшен на remote. Подробнее здесь — PuTTY и SSH.
Что запомнить
Терминал — это полноценная среда взаимодействия с операционной системой. В отличие от GUI, где действия скрыты за иконками и меню, командная строка делает каждую операцию явной, повторяемой и автоматизируемой (скрипты, CI, удалённое администрирование).
Полезно держать в голове разделение из вводной статьи: окно терминала → оболочка → утилита → ядро ОС.
Основные категории команд
- Безопасность CLI — Опасные скрипты: стоп-лист и проверка команд от ИИ-агента.
- Работа с файлами —
cat,cp,mv,rm,chmod(Linux);copy,move,Get-ChildItem(Windows). - Управление системой —
shutdown,reboot,systemctl/service;Stop-Computer,Restart-Computer. - Мониторинг —
top,htop,df,du,ps,free;Get-Process,Get-PSDrive. - Сеть —
ping,curl,wget,ssh; современная диагностика портов:ss(Linux),Get-NetTCPConnection(PowerShell); классическийnetstatещё встречается в материалах и на экзаменах.
Справочники с примерами: Linux, Windows. Синтаксис цепочек и перенаправлений — знаки препинания.
Автоматизация в разделе
| Платформа | Формат | Статья |
|---|---|---|
| Windows (legacy) | .bat | Сценарии автоматизации |
| Windows (основной путь) | .ps1 | PowerShell |
| Linux / macOS | .sh | Скрипты Unix |
| Сборка по Makefile | make | Утилита make |
| HTTP / API из консоли | curl | Утилита curl, curl / fetch — примеры |
Удалённый доступ к серверам — PuTTY и SSH.
Три правила работы в терминале
Перед копированием из чата, туториала или предложения ИИ-агента — curl | bash, rm -rf, git reset --hard, Remove-Item -Recurse -Force.
Топ-10 ловушек и первые шаги после ошибки в Git — в статье Опасные скрипты.
- Всегда проверяйте, что делает команда, прежде чем выполнять (особенно
rm -rf,Remove-Item -Recurse -Force, массовыеchmod). - Используйте
sudo/ повышение прав только когда это необходимо. - Создавайте алиасы и скрипты для частых операций — меньше опечаток, проще передать коллеге.
Три фундаментальных момента
- Командная строка даёт прямой контроль над системой и воспроизводимые сценарии.
- Автоматизация через CLI экономит время на рутине и в продакшене.
- Точные формулировки (пути, кавычки, код возврата) предотвращают ошибки, которые в GUI иногда заметны позже.
Терминал — ещё и культура работы — последовательность действий, внимание к выводу и логам, привычка читать справку (man, Get-Help) перед экспериментом на боевой машине.
Смежные темы (не ядро раздела "Терминал")
Разметка дисков (MBR/GPT), разделы /boot, /home, swap, настройка DNS и DHCP при установке ОС относятся к разделам про операционные системы и инсталляцию, а не к ежедневным командам в shell. Если вы ставите Linux с нуля — смотрите материалы раздела Операционная система.
Проверьте себя по чек-листу.
Куда идти дальше
| Тема | Раздел |
|---|---|
| "Исполняемые файлы и архивы — о разделе" | "Исполняемые файлы и архивы — о разделе" |
| "Основы информационной безопасности — о разделе" | "Основы информационной безопасности — о разделе" |
| "Программа — о разделе" | "Программа — о разделе" |
| "Основы интеграционного взаимодействия — о разделе" | "Основы интеграционного взаимодействия — о разделе" |
Проверьте себя: Чек-лист самопроверки.