<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Cli on Tatarinov</title><link>https://blog.tatarinovms.ru/tags/cli/</link><description>Recent content in Cli on Tatarinov</description><generator>Hugo</generator><language>en</language><lastBuildDate>Sun, 12 Apr 2026 10:00:00 +0500</lastBuildDate><atom:link href="https://blog.tatarinovms.ru/tags/cli/index.xml" rel="self" type="application/rss+xml"/><item><title>VoxCPM — клонирование вашего голоса через CLI</title><link>https://blog.tatarinovms.ru/voxcpm/</link><pubDate>Sun, 12 Apr 2026 10:00:00 +0500</pubDate><guid>https://blog.tatarinovms.ru/voxcpm/</guid><description>&lt;p&gt;&lt;img src="https://blog.tatarinovms.ru/images/posts/voxcpm/logo.webp" alt=""&gt;&lt;/p&gt;
&lt;h1 id="развёртывание-voxcpm-на-macbook-с-чипом-apple-silicon"&gt;
 Развёртывание VoxCPM на MacBook с чипом Apple Silicon
 &lt;a class="heading-link" href="#%d1%80%d0%b0%d0%b7%d0%b2%d1%91%d1%80%d1%82%d1%8b%d0%b2%d0%b0%d0%bd%d0%b8%d0%b5-voxcpm-%d0%bd%d0%b0-macbook-%d1%81-%d1%87%d0%b8%d0%bf%d0%be%d0%bc-apple-silicon"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h1&gt;
&lt;p&gt;Данное руководство содержит пошаговые инструкции по установке и запуску &lt;a href="https://github.com/OpenBMB/VoxCPM" class="external-link" target="_blank" rel="noopener"&gt;VoxCPM&lt;/a&gt; на macOS с процессорами Apple Silicon. Игрался на своем ноуте.&lt;/p&gt;
&lt;h2 id="скачиваем-репозиторий-проекта"&gt;
 Скачиваем репозиторий проекта
 &lt;a class="heading-link" href="#%d1%81%d0%ba%d0%b0%d1%87%d0%b8%d0%b2%d0%b0%d0%b5%d0%bc-%d1%80%d0%b5%d0%bf%d0%be%d0%b7%d0%b8%d1%82%d0%be%d1%80%d0%b8%d0%b9-%d0%bf%d1%80%d0%be%d0%b5%d0%ba%d1%82%d0%b0"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;Переходим в папку, где у вас всё будет аккуратно лежать и скачиваем репу:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#e6edf3;background-color:#0d1117;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;git clone https://github.com/OpenBMB/VoxCPM.git
&lt;/span&gt;&lt;/span&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;cd VoxCPM
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="настройка-доступа-к-hugging-face"&gt;
 Настройка доступа к Hugging Face
 &lt;a class="heading-link" href="#%d0%bd%d0%b0%d1%81%d1%82%d1%80%d0%be%d0%b9%d0%ba%d0%b0-%d0%b4%d0%be%d1%81%d1%82%d1%83%d0%bf%d0%b0-%d0%ba-hugging-face"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;Для ускорения загрузки моделей и повышения лимитов запросов рекомендуется настроить токен доступа на Hugging Face&lt;/p&gt;</description></item><item><title>Интеграция qwen-cli с редактором Zed</title><link>https://blog.tatarinovms.ru/qwenclizedintegration/</link><pubDate>Mon, 02 Feb 2026 10:00:00 +0500</pubDate><guid>https://blog.tatarinovms.ru/qwenclizedintegration/</guid><description>&lt;p&gt;&lt;img src="https://blog.tatarinovms.ru/images/posts/qwenclizedintegration/logo.webp" alt="logo"&gt;&lt;/p&gt;
&lt;h1 id="интеграция-qwen-cli-с-редактором-zed"&gt;
 Интеграция qwen-cli с редактором Zed
 &lt;a class="heading-link" href="#%d0%b8%d0%bd%d1%82%d0%b5%d0%b3%d1%80%d0%b0%d1%86%d0%b8%d1%8f-qwen-cli-%d1%81-%d1%80%d0%b5%d0%b4%d0%b0%d0%ba%d1%82%d0%be%d1%80%d0%be%d0%bc-zed"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h1&gt;
&lt;p&gt;&lt;a href="https://github.com/QwenLM/qwen-cli" class="external-link" target="_blank" rel="noopener"&gt;qwen-cli&lt;/a&gt; - это командная утилита, которая позволяет использовать возможности модели Qwen AI прямо из терминала. В этой статье я расскажу, как интегрировать qwen-cli с редактором &lt;a href="https://zed.dev/" class="external-link" target="_blank" rel="noopener"&gt;Zed&lt;/a&gt;&lt;/p&gt;
&lt;h2 id="установка-qwen-cli"&gt;
 Установка qwen-cli
 &lt;a class="heading-link" href="#%d1%83%d1%81%d1%82%d0%b0%d0%bd%d0%be%d0%b2%d0%ba%d0%b0-qwen-cli"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;Для начала установим qwen-cli. Установить его можно через Homebrew:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#e6edf3;background-color:#0d1117;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;brew install qwen-code
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Для аутентификации используйте OAuth, указав тип аутентификации:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#e6edf3;background-color:#0d1117;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;qwen --auth-type qwen-oauth
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="настройка-zed"&gt;
 Настройка Zed
 &lt;a class="heading-link" href="#%d0%bd%d0%b0%d1%81%d1%82%d1%80%d0%be%d0%b9%d0%ba%d0%b0-zed"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;Zed поддерживает различные инструменты AI через протокол ACP (Agent Client Protocol). Чтобы подключить Qwen Code CLI, нужно воспользоваться встроенной возможностью Zed для добавления сторонних агентов.&lt;/p&gt;</description></item><item><title>Mole — глубокая очистка и оптимизация macOS</title><link>https://blog.tatarinovms.ru/mole/</link><pubDate>Sun, 28 Dec 2025 12:00:00 +0500</pubDate><guid>https://blog.tatarinovms.ru/mole/</guid><description>&lt;p&gt;&lt;img src="https://blog.tatarinovms.ru/images/posts/mole/logo.webp" alt=""&gt;&lt;/p&gt;
&lt;p&gt;Mole — это универсальный инструмент для глубокой очистки и оптимизации macOS в одном бинарном файле. Он объединяет возможности CleanMyMac, AppCleaner, DaisyDisk и iStat.&lt;/p&gt;
&lt;p&gt;Инструмент умеет сканировать и удалять кэши, логи, остатки браузеров, освобождая гигабайты пространства. Есть умный деинсталлятор, который полностью удаляет приложения вместе с launch-агентами, настройками и скрытыми остатками. Также доступен анализ диска, мониторинг CPU, GPU, памяти, диска и сети в реальном времени.&lt;/p&gt;
&lt;h3 id="как-установить"&gt;
 Как установить?
 &lt;a class="heading-link" href="#%d0%ba%d0%b0%d0%ba-%d1%83%d1%81%d1%82%d0%b0%d0%bd%d0%be%d0%b2%d0%b8%d1%82%d1%8c"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#e6edf3;background-color:#0d1117;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;brew install tw93/tap/mole
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Или через скрипт:&lt;/p&gt;</description></item><item><title>Управление версиями Node.js с помощью nodenv</title><link>https://blog.tatarinovms.ru/nodenv/</link><pubDate>Mon, 16 Jun 2025 14:54:00 +0500</pubDate><guid>https://blog.tatarinovms.ru/nodenv/</guid><description>&lt;p&gt;&lt;img src="https://blog.tatarinovms.ru/images/posts/nodenv/logo.webp" alt=""&gt;&lt;/p&gt;
&lt;p&gt;Если вы разрабатываете или как я тестируете по написанное на Node.js, то наверняка сталкивались с необходимостью управлять несколькими версиями Node.js. Для этих целей отлично подходит &lt;code&gt;nodenv&lt;/code&gt; — легковесная утилита для управления версиями Node.js.&lt;/p&gt;
&lt;p&gt;Кратко плюсы можно описать так:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Изоляция версий&lt;/strong&gt; Node.js для разных проектов.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Легко устанавливать новые версии&lt;/strong&gt;, без риска сломать старые.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Простота и надёжность&lt;/strong&gt; — &lt;code&gt;nodenv&lt;/code&gt; работает быстро и стабильно.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Интеграция с shell&lt;/strong&gt;, автоматическое переключение версий при смене директории.&lt;/li&gt;
&lt;li&gt;Возможность временного изменения версии через &lt;code&gt;nodenv shell&lt;/code&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="установка"&gt;
 Установка
 &lt;a class="heading-link" href="#%d1%83%d1%81%d1%82%d0%b0%d0%bd%d0%be%d0%b2%d0%ba%d0%b0"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h3&gt;
&lt;p&gt;Для установки &lt;code&gt;nodenv&lt;/code&gt; как всегда будем использовать &lt;a href="https://blog.tatarinovms.space/brew" class="external-link" target="_blank" rel="noopener"&gt;Homebrew&lt;/a&gt;:&lt;/p&gt;</description></item><item><title>ffmpeg — полезности</title><link>https://blog.tatarinovms.ru/ffmpeg/</link><pubDate>Tue, 13 May 2025 17:57:16 +0500</pubDate><guid>https://blog.tatarinovms.ru/ffmpeg/</guid><description>&lt;p&gt;&lt;img src="https://blog.tatarinovms.ru/images/posts/ffmpeg/logo.webp" alt=""&gt;&lt;/p&gt;
&lt;p&gt;FFmpeg — это мощный и свободно распространяемый мультимедийный фреймворк, который позволяет конвертировать, редактировать, обрезать, склеивать, стримить см: &lt;a href="https://blog.tatarinovms.space/telegramradio/" class="external-link" target="_blank" rel="noopener"&gt;Делаем свою радиостанцию в Telegram канале&lt;/a&gt;. Он работает на любом утюге.&lt;/p&gt;
&lt;p&gt;Решил в одном посте собрать комманды, которыми я часто пользуюсь и в &amp;ldquo;домашних делах&amp;rdquo; и в работе.&lt;/p&gt;
&lt;h3 id="уменьшение-размера-видео"&gt;
 Уменьшение размера видео:
 &lt;a class="heading-link" href="#%d1%83%d0%bc%d0%b5%d0%bd%d1%8c%d1%88%d0%b5%d0%bd%d0%b8%d0%b5-%d1%80%d0%b0%d0%b7%d0%bc%d0%b5%d1%80%d0%b0-%d0%b2%d0%b8%d0%b4%d0%b5%d0%be"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#e6edf3;background-color:#0d1117;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;ffmpeg -i rec.mov -vcodec h264 -crf &lt;span style="color:#a5d6ff"&gt;23&lt;/span&gt; -preset fast -acodec aac output.mp4
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="делаем-gif-из-видео"&gt;
 Делаем GIF из видео:
 &lt;a class="heading-link" href="#%d0%b4%d0%b5%d0%bb%d0%b0%d0%b5%d0%bc-gif-%d0%b8%d0%b7-%d0%b2%d0%b8%d0%b4%d0%b5%d0%be"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#e6edf3;background-color:#0d1117;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;ffmpeg -i ./output.mp4 -t &lt;span style="color:#a5d6ff"&gt;10&lt;/span&gt; -vf &lt;span style="color:#a5d6ff"&gt;&amp;#34;fps=10,scale=320:-1&amp;#34;&lt;/span&gt; output.gif
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="удаляем-аудио-из-видео"&gt;
 Удаляем аудио из видео:
 &lt;a class="heading-link" href="#%d1%83%d0%b4%d0%b0%d0%bb%d1%8f%d0%b5%d0%bc-%d0%b0%d1%83%d0%b4%d0%b8%d0%be-%d0%b8%d0%b7-%d0%b2%d0%b8%d0%b4%d0%b5%d0%be"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#e6edf3;background-color:#0d1117;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;ffmpeg -i ./output.mp4 -an -c:v copy output_noaudio.mp4
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="извлечение-аудио-из-видео"&gt;
 Извлечение аудио из видео
 &lt;a class="heading-link" href="#%d0%b8%d0%b7%d0%b2%d0%bb%d0%b5%d1%87%d0%b5%d0%bd%d0%b8%d0%b5-%d0%b0%d1%83%d0%b4%d0%b8%d0%be-%d0%b8%d0%b7-%d0%b2%d0%b8%d0%b4%d0%b5%d0%be"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#e6edf3;background-color:#0d1117;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;ffmpeg -i ./youtube.mp4 -acodec libmp3lame audio.mp3
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="сохраняет-один-кадр-на-10-й-секунды-как-screenjpg"&gt;
 Сохраняет один кадр на 10-й секунды как screen.jpg
 &lt;a class="heading-link" href="#%d1%81%d0%be%d1%85%d1%80%d0%b0%d0%bd%d1%8f%d0%b5%d1%82-%d0%be%d0%b4%d0%b8%d0%bd-%d0%ba%d0%b0%d0%b4%d1%80-%d0%bd%d0%b0-10-%d0%b9-%d1%81%d0%b5%d0%ba%d1%83%d0%bd%d0%b4%d1%8b-%d0%ba%d0%b0%d0%ba-screenjpg"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#e6edf3;background-color:#0d1117;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;ffmpeg -i ./youtube_VMuZuUjpGC0_1080x1920_h264.mp4 -ss 00:00:10 -vframes &lt;span style="color:#a5d6ff"&gt;1&lt;/span&gt; screen.jpg
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="вырезает-фрагмент-с-15-й-по-30-ю-секунду"&gt;
 Вырезает фрагмент с 15-й по 30-ю секунду
 &lt;a class="heading-link" href="#%d0%b2%d1%8b%d1%80%d0%b5%d0%b7%d0%b0%d0%b5%d1%82-%d1%84%d1%80%d0%b0%d0%b3%d0%bc%d0%b5%d0%bd%d1%82-%d1%81-15-%d0%b9-%d0%bf%d0%be-30-%d1%8e-%d1%81%d0%b5%d0%ba%d1%83%d0%bd%d0%b4%d1%83"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#e6edf3;background-color:#0d1117;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;ffmpeg -i ./youtube_VMuZuUjpGC0_1080x1920_h264.mp4 -ss 00:00:15 -to 00:00:30 -c copy cut_output.mp4
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="накладываем-логотип-на-видео"&gt;
 Накладываем логотип на видео
 &lt;a class="heading-link" href="#%d0%bd%d0%b0%d0%ba%d0%bb%d0%b0%d0%b4%d1%8b%d0%b2%d0%b0%d0%b5%d0%bc-%d0%bb%d0%be%d0%b3%d0%be%d1%82%d0%b8%d0%bf-%d0%bd%d0%b0-%d0%b2%d0%b8%d0%b4%d0%b5%d0%be"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#e6edf3;background-color:#0d1117;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;ffmpeg -i ./youtube.mp4 -i ./logo.jpeg -filter_complex &lt;span style="color:#a5d6ff"&gt;&amp;#34;[0:v][1:v]overlay=10:10&amp;#34;&lt;/span&gt; output.mp4
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;</description></item><item><title>btop++ — cовременный мониторинг системы</title><link>https://blog.tatarinovms.ru/btopplus/</link><pubDate>Sat, 08 Mar 2025 14:54:00 +0500</pubDate><guid>https://blog.tatarinovms.ru/btopplus/</guid><description>&lt;p&gt;&lt;img src="https://blog.tatarinovms.ru/images/posts/btop/logo.webp" alt=""&gt;&lt;/p&gt;
&lt;h3 id="введение"&gt;
 Введение
 &lt;a class="heading-link" href="#%d0%b2%d0%b2%d0%b5%d0%b4%d0%b5%d0%bd%d0%b8%d0%b5"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h3&gt;
&lt;p&gt;Сегодня хочу рассказать вам об одной из утилит для мониторинга системы — btop++&lt;/p&gt;
&lt;p&gt;btop++ — это усовершенствованная версия популярной утилиты btop, которая предоставляет детализированную информацию о состоянии вашей системы в реальном времени. Она отображает данные о процессоре, оперативной памяти, дисковом пространстве, сетевых соединениях и др..&lt;/p&gt;
&lt;h4 id="основные-особенности"&gt;
 Основные особенности:
 &lt;a class="heading-link" href="#%d0%be%d1%81%d0%bd%d0%be%d0%b2%d0%bd%d1%8b%d0%b5-%d0%be%d1%81%d0%be%d0%b1%d0%b5%d0%bd%d0%bd%d0%be%d1%81%d1%82%d0%b8"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h4&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Интуитивно понятный интерфейс: btop++ имеет красивый и настраиваемый интерфейс, который легко читается и позволяет быстро находить нужную информацию.&lt;/p&gt;</description></item><item><title>Brew - хватит для всего</title><link>https://blog.tatarinovms.ru/brew/</link><pubDate>Wed, 01 Jan 2025 17:57:16 +0500</pubDate><guid>https://blog.tatarinovms.ru/brew/</guid><description>&lt;p&gt;&lt;img src="https://blog.tatarinovms.ru/images/posts/brew/logo.webp" alt="logo"&gt;&lt;/p&gt;
&lt;p&gt;Если вы ознакомитесь с содержимым моего блога, вы заметите довольно большое количество консольных инструментов. Консольный софт часто оказывается более удобным и быстрым решением по сравнению с приложениями с графическим интерфейсом (GUI). Сегодня я расскажу о самой фундаментальной утилите для macOS — менеджере пакетов &lt;code&gt;brew&lt;/code&gt;. Через него можно управлять установкой практически всего остального ПО, будь то CLI-инструменты или полноценные GUI-приложения.&lt;/p&gt;
&lt;h2 id="зачем-нужен-brew"&gt;
 Зачем нужен Brew?
 &lt;a class="heading-link" href="#%d0%b7%d0%b0%d1%87%d0%b5%d0%bc-%d0%bd%d1%83%d0%b6%d0%b5%d0%bd-brew"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h2&gt;
&lt;p&gt;Brew — это де-факто стандартный пакетный менеджер для macOS, который позволяет мне устанавливать и управлять огромным количеством полезного ПО, необходимого как в профессиональной работе, так и в повседневной жизни. В качестве оболочки (shell) я использую старый добрый &lt;a href="https://ohmyz.sh/" class="external-link" target="_blank" rel="noopener"&gt;oh-my-zsh&lt;/a&gt;.&lt;/p&gt;</description></item><item><title>showcert &amp; gencert — удобный инструмент для работы с SSL-сертификатами</title><link>https://blog.tatarinovms.ru/showcert/</link><pubDate>Thu, 04 Jul 2024 14:54:00 +0500</pubDate><guid>https://blog.tatarinovms.ru/showcert/</guid><description>&lt;p&gt;&lt;img src="https://blog.tatarinovms.ru/images/posts/showcert/logo.webp" alt=""&gt;&lt;/p&gt;
&lt;p&gt;В этой статье мы расскажем о двух удобных CLI-утилитах — &lt;code&gt;showcert&lt;/code&gt; и &lt;code&gt;gencert&lt;/code&gt;, которые помогут вам легко читать, проверять и генерировать SSL-сертификаты. Эти инструменты отлично подходят как для повседневного использования, так и для автоматизации задач в DevOps-окружении.&lt;/p&gt;
&lt;h2 id="обзор-утилит"&gt;
 Обзор утилит
 &lt;a class="heading-link" href="#%d0%be%d0%b1%d0%b7%d0%be%d1%80-%d1%83%d1%82%d0%b8%d0%bb%d0%b8%d1%82"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h2&gt;
&lt;h3 id="showcert"&gt;
 &lt;code&gt;showcert&lt;/code&gt;
 &lt;a class="heading-link" href="#showcert"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h3&gt;
&lt;p&gt;Эта утилита предназначена для чтения и анализа существующих SSL-сертификатов. С её помощью вы можете быстро получить информацию о сертификате удалённого сервера или локального файла.&lt;/p&gt;</description></item><item><title>Качаем видео и не только с YouTube с помощью yt-dlp</title><link>https://blog.tatarinovms.ru/yt-dlp/</link><pubDate>Tue, 08 Aug 2023 17:57:16 +0500</pubDate><guid>https://blog.tatarinovms.ru/yt-dlp/</guid><description>&lt;p&gt;&lt;img src="https://blog.tatarinovms.ru/images/posts/ytdlp/logo.webp" alt=""&gt;&lt;/p&gt;
&lt;p&gt;Давно писал такой пост &lt;a href="https://blog.tatarinovms.space/youtube2mp3/" class="external-link" target="_blank" rel="noopener"&gt;Конвертация Youtube ролика в mp3&lt;/a&gt; но Youtube-dl умер. Самый крутой и популярный сейчас проект это &lt;a href="https://github.com/yt-dlp/yt-dlp" class="external-link" target="_blank" rel="noopener"&gt;yt-dlp&lt;/a&gt;&lt;/p&gt;
&lt;h3 id="как-установить-"&gt;
 Как установить ?
 &lt;a class="heading-link" href="#%d0%ba%d0%b0%d0%ba-%d1%83%d1%81%d1%82%d0%b0%d0%bd%d0%be%d0%b2%d0%b8%d1%82%d1%8c-"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h3&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#e6edf3;background-color:#0d1117;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; brew install yt-dlp
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="как-использовать-"&gt;
 Как использовать ?
 &lt;a class="heading-link" href="#%d0%ba%d0%b0%d0%ba-%d0%b8%d1%81%d0%bf%d0%be%d0%bb%d1%8c%d0%b7%d0%be%d0%b2%d0%b0%d1%82%d1%8c-"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h3&gt;
&lt;h4 id="скачать-mp3"&gt;
 Скачать MP3
 &lt;a class="heading-link" href="#%d1%81%d0%ba%d0%b0%d1%87%d0%b0%d1%82%d1%8c-mp3"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h4&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#e6edf3;background-color:#0d1117;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt; yt-dlp https://youtu.be/ioxEuSpUMkQ -x --audio-format mp3
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;На выходе у вас будет сразу mp3 файл cо звуком из видео&lt;/p&gt;</description></item><item><title>killport - убиваем процесс по сетевому порту</title><link>https://blog.tatarinovms.ru/killbyport/</link><pubDate>Fri, 28 Apr 2023 17:57:16 +0500</pubDate><guid>https://blog.tatarinovms.ru/killbyport/</guid><description>&lt;p&gt;&lt;img src="https://blog.tatarinovms.ru/images/posts/killport/logo.webp" alt=""&gt;&lt;/p&gt;
&lt;p&gt;Иногда во время разработки или тестирования необходимо быстро убить процесс, но вы знаете только порт на котором сервис поднялся. Быстро убить процесс по порту вам поможет программа — &lt;a href="https://github.com/jkfran/killport" class="external-link" target="_blank" rel="noopener"&gt;killport&lt;/a&gt;&lt;/p&gt;
&lt;h3 id="установка"&gt;
 Установка
 &lt;a class="heading-link" href="#%d1%83%d1%81%d1%82%d0%b0%d0%bd%d0%be%d0%b2%d0%ba%d0%b0"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h3&gt;
&lt;h2 id="linux"&gt;
 Linux
 &lt;a class="heading-link" href="#linux"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h2&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#e6edf3;background-color:#0d1117;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;curl -sL https://bit.ly/killport | sh
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="macos"&gt;
 MacOS
 &lt;a class="heading-link" href="#macos"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h2&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#e6edf3;background-color:#0d1117;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;brew tap jkfran/killport
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#e6edf3;background-color:#0d1117;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;brew install killport
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h3 id="использование"&gt;
 Использование
 &lt;a class="heading-link" href="#%d0%b8%d1%81%d0%bf%d0%be%d0%bb%d1%8c%d0%b7%d0%be%d0%b2%d0%b0%d0%bd%d0%b8%d0%b5"&gt;
 &lt;i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"&gt;&lt;/i&gt;
 &lt;span class="sr-only"&gt;Link to heading&lt;/span&gt;
 &lt;/a&gt;
&lt;/h3&gt;
&lt;p&gt;Если порт один:&lt;/p&gt;</description></item><item><title>exa – удобный ls</title><link>https://blog.tatarinovms.ru/exa/</link><pubDate>Sat, 07 Aug 2021 21:44:49 +0500</pubDate><guid>https://blog.tatarinovms.ru/exa/</guid><description>&lt;p&gt;&lt;img src="https://blog.tatarinovms.ru/images/posts/exa/logo.webp" alt=""&gt;&lt;/p&gt;
&lt;p&gt;Очередная CLI утилита!&lt;/p&gt;
&lt;p&gt;Сегодня я вам кратко о более удобной версии ls, в чем приемущества exa над ls?&lt;/p&gt;
&lt;p&gt;Просто чуть удобнее: больше ключей, подсветка и удобные типы сортировок и т.д&lt;/p&gt;
&lt;p&gt;О всех фичах, можно почитать&lt;a href="https://the.exa.website/features" class="external-link" target="_blank" rel="noopener"&gt;тут&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;На MacOS ставиться через brew:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#e6edf3;background-color:#0d1117;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;brew install exa
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Есть версии под все дистрибутивы Linux, ищите в ваших репозитариях!&lt;/p&gt;</description></item><item><title>Как просто узнать ваш внешний IP адрес?</title><link>https://blog.tatarinovms.ru/externalip/</link><pubDate>Sat, 23 May 2020 21:33:10 +0500</pubDate><guid>https://blog.tatarinovms.ru/externalip/</guid><description>&lt;p&gt;&lt;img src="https://blog.tatarinovms.ru/images/posts/externalip/logo.webp" alt=""&gt;&lt;/p&gt;
&lt;p&gt;Иногда необходимо быстро узнать ваш внешний адрес, как это сделать?&lt;/p&gt;
&lt;p&gt;Воспользуемся сайтом ifconfig.me&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" style="color:#e6edf3;background-color:#0d1117;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span style="display:flex;"&gt;&lt;span&gt;curl ifconfig.me
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;В ответ вам придет ваш внешний IP адрес.&lt;/p&gt;</description></item></channel></rss>