<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Linux CLI гайд для dev: top, htop и grep с примерами]]></title><description><![CDATA[<p dir="auto">В Linux CLI скрывается мощь для разработчиков. Команды <strong>top</strong>, <strong>htop</strong> и <strong>grep</strong> помогают быстро мониторить систему, находить проблемы и анализировать логи. Это базовый набор, который экономит часы на отладку.</p>
<p dir="auto">Зачем они нужны dev’ам? Сервер завис — смотришь процессы. Логи разрослись — ищешь ошибку. Без GUI в продакшене CLI — единственный вариант. Разберём каждую команду по делу, с примерами и хитростями.</p>
<h2>Мониторинг процессов с top и htop</h2>
<p dir="auto">Команда <strong>top</strong> — стандартный инструмент для просмотра запущенных процессов в реальном времени. Она показывает CPU, память, нагрузку на систему и список процессов с их PID, пользователем и использованием ресурсов. Запускается просто: <code>top</code> в терминале, и ты видишь обновляющуюся таблицу. По умолчанию сортировка по CPU, но можно менять клавишами: <strong>Shift + P</strong> для CPU, <strong>Shift + M</strong> для памяти.</p>
<p dir="auto"><strong>htop</strong> — улучшенная версия top с цветами, мышью и деревом процессов. Установка простая: <code>sudo apt install htop</code> на Debian/Ubuntu или <code>sudo dnf install htop</code> на Fedora. В htop удобнее фильтровать процессы по имени (F4), убивать их (F9) и видеть бары нагрузки. Для dev’ов это must-have при дебаже: видишь, какой сервис жрёт RAM, и сразу реагируешь. Переходим к примерам использования.</p>
<p dir="auto">Вот ключевые возможности:</p>
<ul>
<li><strong>top -p PID</strong>: мониторит конкретный процесс по ID. Полезно для слежки за зависшим скриптом.</li>
<li><strong>htop -u user</strong>: показывает только процессы пользователя. Идеально в multi-user среде.</li>
<li><strong>F3 в htop</strong>: поиск по строке, чтобы найти nginx или python.</li>
</ul>
<table class="table table-bordered table-striped">
<thead>
<tr>
<th>Команда</th>
<th>Преимущества</th>
<th>Когда использовать</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>top</strong></td>
<td>Встроенная, не требует установки</td>
<td>Быстрый чек на любом сервере</td>
</tr>
<tr>
<td><strong>htop</strong></td>
<td>Цвета, мышь, дерево процессов</td>
<td>Ежедневная разработка и деbag</td>
</tr>
<tr>
<td><strong>top -b -n1 &gt; processes.txt</strong></td>
<td>Экспорт в файл</td>
<td>Анализ логов оффлайн</td>
</tr>
</tbody>
</table>
<p dir="auto"><em>Нюанс: в top нажми q для выхода, в htop — F10.</em></p>
<h2>Поиск в логах и файлах с grep</h2>
<p dir="auto"><strong>grep</strong> — король поиска по тексту в Linux. Ищет строки по паттерну в файлах или выводе команд. Базовый синтаксис: <code>grep 'pattern' file.log</code>. Для dev’ов это спасение: логи на 10 ГБ, а ошибка в одной строке — grep её вытащит за секунды. Рекурсивный поиск: <code>grep -r 'ERROR' /var/log/</code> пройдётся по всем подпапкам.</p>
<p dir="auto">С флагами grep становится суперинструментом. <strong>grep -i</strong> игнорирует регистр, <strong>grep -v</strong> инвертирует (показывает несовпадения), <strong>grep -n</strong> нумерует строки. В комбо с <code>tail -f app.log | grep ERROR</code> следишь за ошибками в реальном времени. А <code>ps aux | grep python</code> покажет все Python-процессы. Логично перейти к примерам для типичных задач dev’а.</p>
<p dir="auto">Полезные комбинации:</p>
<ul>
<li><code>journalctl -u nginx | grep '500'</code>: ошибки 500 в логах systemd.</li>
<li><code>grep -E 'error|warn' *.log</code>: поиск по нескольким файлам с OR.</li>
<li><code>grep -A 5 -B 5 'exception' stacktrace.log</code>: контекст вокруг совпадения (±5 строк).</li>
</ul>
<table class="table table-bordered table-striped">
<thead>
<tr>
<th>Флаг</th>
<th>Описание</th>
<th>Пример</th>
</tr>
</thead>
<tbody>
<tr>
<td><strong>-i</strong></td>
<td>Игнор регистра</td>
<td><code>grep -i error log.txt</code></td>
</tr>
<tr>
<td><strong>-r</strong></td>
<td>Рекурсивно</td>
<td><code>grep -r 'TODO' src/</code></td>
</tr>
<tr>
<td><strong>-c</strong></td>
<td>Счётчик строк</td>
<td><code>grep -c 'failed' access.log</code></td>
</tr>
</tbody>
</table>
<p dir="auto"><em>Важно: экранируй спецсимволы в паттернах, типа точки — <code>grep '\d+' log</code> для цифр.</em></p>
<h2>Комбо top/htop + grep для dev-тасков</h2>
<p dir="auto">Одиночные команды хороши, но в связке они раскрываются. Например, <code>ps aux | grep node | head -10</code> — топ-10 Node.js процессов. Или <code>top -b -n1 | grep httpd</code> — снапшот Apache из top. htop с grep: сначала htop, копируешь PID, потом <code>grep PID /proc/*/status</code>. Для логов: <code>docker logs container | grep OOMKilled</code> — поиск out-of-memory в Docker.</p>
<p dir="auto">Это ускоряет деbag в проде. Сервер под нагрузкой? <code>watch -n1 'ps aux --sort=-%mem | head'</code> — обновляет топ по памяти каждую секунду. С <strong>ripgrep</strong> (rg) вместо grep быстрее на больших файлах: <code>rg 'panic' /var/log</code>. Установка: <code>sudo apt install ripgrep</code>. Такие связки экономят время на 80% задач мониторинга.</p>
<p dir="auto">Быстрые рецепты:</p>
<ol>
<li><strong>Мониторинг памяти</strong>: <code>htop</code> → F6 → RES (сортировка по резидентной памяти).</li>
<li><strong>Поиск утечек</strong>: <code>grep 'malloc' core.dump</code>.</li>
<li><code>netstat -tuln | grep :3000</code> — кто слушает порт.</li>
</ol>
<table class="table table-bordered table-striped">
<thead>
<tr>
<th>Задача</th>
<th>Команда</th>
<th>Результат</th>
</tr>
</thead>
<tbody>
<tr>
<td>Топ CPU</td>
<td><code>top</code> → Shift+P</td>
<td>Список по нагрузке</td>
</tr>
<tr>
<td>Логи ошибок</td>
<td><code>tail -f log | grep FAIL</code></td>
<td>Live-мониторинг</td>
</tr>
<tr>
<td>Процессы пользователя</td>
<td><code>htop -u dev</code></td>
<td>Только твои задачи</td>
</tr>
</tbody>
</table>
<h2>Что дальше в Linux CLI для dev</h2>
<p dir="auto">Мы разобрали <strong>top</strong>, <strong>htop</strong> и <strong>grep</strong> — базу для 90% мониторинга и поиска. Они решают ежедневные боли: зависшие процессы, скрытые ошибки в логах, быструю диагностику. Осталось освоить <code>awk</code>, <code>sed</code> для обработки вывода и <code>tmux</code> для сессий.</p>
<p dir="auto">Дальше копай <code>strace</code> для трассировки системных вызовов или <code>btop</code> как супер-htop. Практикуй на виртуалке — через неделю CLI станет быстрее GUI. Выбирай дистрибутив по вкусу, но CLI универсален везде.</p>
]]></description><link>https://forum.exlends.ru/topic/409/linux-cli-gajd-dlya-dev-top-htop-i-grep-s-primerami</link><generator>RSS for Node</generator><lastBuildDate>Sat, 17 Oct 2026 03:25:11 GMT</lastBuildDate><atom:link href="https://forum.exlends.ru/topic/409.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 03 Feb 2026 07:01:27 GMT</pubDate><ttl>60</ttl></channel></rss>