HTML Diff
0 added 0 removed
Original 2026-01-01
Modified 2026-02-21
1 <p><a>#статьи</a></p>
1 <p><a>#статьи</a></p>
2 <ul><li>18 апр 2022</li>
2 <ul><li>18 апр 2022</li>
3 <li>0</li>
3 <li>0</li>
4 </ul><p>Авторская подборка полезных утилит, которые скрасят суровые терминальные будни любого программиста.</p>
4 </ul><p>Авторская подборка полезных утилит, которые скрасят суровые терминальные будни любого программиста.</p>
5 <p>Кадр: сериал "Кремниевая долина"</p>
5 <p>Кадр: сериал "Кремниевая долина"</p>
6 <p>Переводчик, специалист по авиационной безопасности, начинающий веб-разработчик. Убеждён, что любой человек может сочетать абсолютно разные интересы и сферы профессиональной деятельности, ведь наши возможности безграничны.</p>
6 <p>Переводчик, специалист по авиационной безопасности, начинающий веб-разработчик. Убеждён, что любой человек может сочетать абсолютно разные интересы и сферы профессиональной деятельности, ведь наши возможности безграничны.</p>
7 <p><strong>Об авторе</strong></p>
7 <p><strong>Об авторе</strong></p>
8 <p>Senior Software Engineer, Consultant в Liferay. Обожает изучать, преподавать и создавать классные программные продукты, которые приносят удовольствие пользователям.</p>
8 <p>Senior Software Engineer, Consultant в Liferay. Обожает изучать, преподавать и создавать классные программные продукты, которые приносят удовольствие пользователям.</p>
9 <p>Терминал, или командная строка, - пожалуй, самый часто используемый программистами инструмент. CLI довольно нетребователен к ресурсам и при этом потрясающе функционален. Некоторые разработчики даже тратят время на кастомизацию своего терминала - и я их очень уважаю.</p>
9 <p>Терминал, или командная строка, - пожалуй, самый часто используемый программистами инструмент. CLI довольно нетребователен к ресурсам и при этом потрясающе функционален. Некоторые разработчики даже тратят время на кастомизацию своего терминала - и я их очень уважаю.</p>
10 <p>В статье я расскажу о нескольких CLI-инструментах, которые мне очень нравятся и которые я применяю практически ежедневно. Хотя это, конечно, лишь верхушка айсберга - существует куча классных утилит для терминала.</p>
10 <p>В статье я расскажу о нескольких CLI-инструментах, которые мне очень нравятся и которые я применяю практически ежедневно. Хотя это, конечно, лишь верхушка айсберга - существует куча классных утилит для терминала.</p>
11 <p>Для тех, кто вдруг не знаком с Vim: это легендарный текстовый редактор, который расширяет возможности стандартного Vi и установлен "из коробки" в любой уважающей себя *nix-системе. Он позволяет редактировать или создавать файлы прямо в терминале.</p>
11 <p>Для тех, кто вдруг не знаком с Vim: это легендарный текстовый редактор, который расширяет возможности стандартного Vi и установлен "из коробки" в любой уважающей себя *nix-системе. Он позволяет редактировать или создавать файлы прямо в терминале.</p>
12 Базовое применение Vim<p>Vim будет полезен, если вам надо быстро отредактировать файл - локально в терминале или на удалённой машине, - а открывать IDE или GUI-редактор слишком долго или даже невозможно. Поначалу Vim может показаться замороченным и непривычным, потому что многие его команды и сочетания клавиш не интуитивно понятны, в отличие от современных редакторов кода.</p>
12 Базовое применение Vim<p>Vim будет полезен, если вам надо быстро отредактировать файл - локально в терминале или на удалённой машине, - а открывать IDE или GUI-редактор слишком долго или даже невозможно. Поначалу Vim может показаться замороченным и непривычным, потому что многие его команды и сочетания клавиш не интуитивно понятны, в отличие от современных редакторов кода.</p>
13 <p>Но если вы всё же потратите время на изучение Vim, то оцените, насколько это мощный инструмент, и поймёте, почему у такого аскетичного консольного редактора такое огромное сообщество и фан-база. Да, его комьюнити настолько велико, что разработчики даже создают плагины для популярных IDE и редакторов кода, которые превращают их интерфейс в Vim-like.</p>
13 <p>Но если вы всё же потратите время на изучение Vim, то оцените, насколько это мощный инструмент, и поймёте, почему у такого аскетичного консольного редактора такое огромное сообщество и фан-база. Да, его комьюнити настолько велико, что разработчики даже создают плагины для популярных IDE и редакторов кода, которые превращают их интерфейс в Vim-like.</p>
14 <p>Для отображения информации о запущенных системных процессах, памяти устройства и загрузке CPU часто используется команда top. Но при работе с ней порой бывает непросто разобраться в отображаемых данных. Чтобы облегчить себе жизнь, рекомендую<a>vtop</a> - это как top, но с графическим интерфейсом.</p>
14 <p>Для отображения информации о запущенных системных процессах, памяти устройства и загрузке CPU часто используется команда top. Но при работе с ней порой бывает непросто разобраться в отображаемых данных. Чтобы облегчить себе жизнь, рекомендую<a>vtop</a> - это как top, но с графическим интерфейсом.</p>
15 vtop в действии<p>Мне очень нравится визуальное отображение информации, поэтому vtop запущен у меня всегда - это позволяет следить за загрузкой системы. Правда, для работы с ним вам понадобится npm.</p>
15 vtop в действии<p>Мне очень нравится визуальное отображение информации, поэтому vtop запущен у меня всегда - это позволяет следить за загрузкой системы. Правда, для работы с ним вам понадобится npm.</p>
16 <p>Универсальный инструмент расширенного поиска в командной строке, который позволяет находить файлы, содержащие введённый вами текст. Даже само по себе это прикольно: отображаются любые файлы из директории, в которой вы находитесь, запуская команду. Это как Spotlight, только в терминале.</p>
16 <p>Универсальный инструмент расширенного поиска в командной строке, который позволяет находить файлы, содержащие введённый вами текст. Даже само по себе это прикольно: отображаются любые файлы из директории, в которой вы находитесь, запуская команду. Это как Spotlight, только в терминале.</p>
17 Как работает расширенный поиск в моей домашней директории<p>Но истинный потенциал fzf раскрывается при комбинировании с другими командами - например, kill или cat. Для этого понадобится запустить скрипт установки, который поставляется вместе с пакетом или лежит внутри репозитория:</p>
17 Как работает расширенный поиск в моей домашней директории<p>Но истинный потенциал fzf раскрывается при комбинировании с другими командами - например, kill или cat. Для этого понадобится запустить скрипт установки, который поставляется вместе с пакетом или лежит внутри репозитория:</p>
18 <p>/usr/local/opt/fzf/install</p>
18 <p>/usr/local/opt/fzf/install</p>
19 <p>or</p>
19 <p>or</p>
20 <p>После этого перезапустите терминал или используйте source .bashrc и ответьте на несколько вопросов. Когда вы ответите на них, вам станут доступны все возможности fzf.</p>
20 <p>После этого перезапустите терминал или используйте source .bashrc и ответьте на несколько вопросов. Когда вы ответите на них, вам станут доступны все возможности fzf.</p>
21 <p>Теперь можно использовать следующие команды:</p>
21 <p>Теперь можно использовать следующие команды:</p>
22 <p>cat **[TAB]</p>
22 <p>cat **[TAB]</p>
23 <p>vim **[TAB]</p>
23 <p>vim **[TAB]</p>
24 <p>ssh **[TAB]</p>
24 <p>ssh **[TAB]</p>
25 <p>fzf тут же примется за работу и найдёт все подходящие элементы:</p>
25 <p>fzf тут же примется за работу и найдёт все подходящие элементы:</p>
26 Аналогично поиску по файлам в IDE<p>Ещё один прикольный вариант применения fzf - в сочетании с командой kill. Пожалуй, этим способом я пользуюсь чаще всего. Давно прошли те дни, когда я вводил ps -ef | grep [имя процесса], а затем набирал вручную либо копировал ID процесса для его завершения.</p>
26 Аналогично поиску по файлам в IDE<p>Ещё один прикольный вариант применения fzf - в сочетании с командой kill. Пожалуй, этим способом я пользуюсь чаще всего. Давно прошли те дни, когда я вводил ps -ef | grep [имя процесса], а затем набирал вручную либо копировал ID процесса для его завершения.</p>
27 <p>Теперь я просто запускаю команду kill [tab] или kill -9 [tab], нахожу процесс, который нужно завершить, и нажимаю Enter. ID процесса подставится автоматически.</p>
27 <p>Теперь я просто запускаю команду kill [tab] или kill -9 [tab], нахожу процесс, который нужно завершить, и нажимаю Enter. ID процесса подставится автоматически.</p>
28 Отличный пример использования fzf<p>Бывало ли так, что вы вводите rm -rf и внезапно понимаете, что только что случайно удалили нечто очень важное - причём безвозвратно? Уверен, такое происходило не только со мной.</p>
28 Отличный пример использования fzf<p>Бывало ли так, что вы вводите rm -rf и внезапно понимаете, что только что случайно удалили нечто очень важное - причём безвозвратно? Уверен, такое происходило не только со мной.</p>
29 <p>Если вы хотите впредь не попадать в подобные неприятности, настоятельно рекомендую вместо стандартной команды использовать для удаления<a>trash-cli</a>. Этот инструмент, вместо того чтобы полностью выпиливать с диска помеченные файлы и папки, просто перемещает их в корзину.</p>
29 <p>Если вы хотите впредь не попадать в подобные неприятности, настоятельно рекомендую вместо стандартной команды использовать для удаления<a>trash-cli</a>. Этот инструмент, вместо того чтобы полностью выпиливать с диска помеченные файлы и папки, просто перемещает их в корзину.</p>
30 trash-cli перемещает файлы в корзину, а не удаляет их<p>Для того чтобы не набирать команду trash и случайно не ошибиться, введя привычную команду, у меня в .bashrc настроен алиас, который заменяет rm:</p>
30 trash-cli перемещает файлы в корзину, а не удаляет их<p>Для того чтобы не набирать команду trash и случайно не ошибиться, введя привычную команду, у меня в .bashrc настроен алиас, который заменяет rm:</p>
31 <p>И да, это работает со всеми флагами, которые предоставляет команда rm.</p>
31 <p>И да, это работает со всеми флагами, которые предоставляет команда rm.</p>
32 <p>Если вы хотите узнать, насколько быстрый у вас интернет, не открывая при этом Chrome, то <a>speed-test</a> - это именно то, что вам нужно.</p>
32 <p>Если вы хотите узнать, насколько быстрый у вас интернет, не открывая при этом Chrome, то <a>speed-test</a> - это именно то, что вам нужно.</p>
33 Да, у меня ужасная скорость интернета, но я не об этом. Улавливайте суть<p>Я пользуюсь этим инструментом довольно часто, и мне нравится, что он всегда под рукой. Кроме того, прикольно проделывать всё это в терминале. Правда, вам понадобится npm.</p>
33 Да, у меня ужасная скорость интернета, но я не об этом. Улавливайте суть<p>Я пользуюсь этим инструментом довольно часто, и мне нравится, что он всегда под рукой. Кроме того, прикольно проделывать всё это в терминале. Правда, вам понадобится npm.</p>
34 <p>Эта тулза очень маленькая, и я её просто обожаю. Терминал на моём компьютере открыт постоянно (я использую iTerm2), и иметь возможность поиска в "Википедии" прямо из терминала - просто потрясающе. А <a>wikit</a>как раз позволяет делать это.</p>
34 <p>Эта тулза очень маленькая, и я её просто обожаю. Терминал на моём компьютере открыт постоянно (я использую iTerm2), и иметь возможность поиска в "Википедии" прямо из терминала - просто потрясающе. А <a>wikit</a>как раз позволяет делать это.</p>
35 Чтобы найти страницу Apple введите "wikit apple company"<p>Для работы инструмента вам понадобится npm.</p>
35 Чтобы найти страницу Apple введите "wikit apple company"<p>Для работы инструмента вам понадобится npm.</p>
36 <p>Последний инструмент в списке, возможно, пригодится далеко не всем, но я использую его каждый день. Те из вас, кто интересуется миром криптовалюты, вероятно, уже с ним знакомы.</p>
36 <p>Последний инструмент в списке, возможно, пригодится далеко не всем, но я использую его каждый день. Те из вас, кто интересуется миром криптовалюты, вероятно, уже с ним знакомы.</p>
37 <p>Следить за кучей валют и их вечно меняющимися курсами бывает утомительно, и тут на помощь приходит<a>cointop</a>.</p>
37 <p>Следить за кучей валют и их вечно меняющимися курсами бывает утомительно, и тут на помощь приходит<a>cointop</a>.</p>
38 <p>сointop - это отсылка к команде top, но вместо информации о системе она выводит статистику по криптовалютам.</p>
38 <p>сointop - это отсылка к команде top, но вместо информации о системе она выводит статистику по криптовалютам.</p>
39 <p>На самом деле ежедневно я использую гораздо больше CLI-инструментов, но из всего своего зоопарка утилит хочу выделить именно эти. Именно с ними я люблю возиться больше всего. Ещё мне нравится, что большинство этих инструментов поддерживаются комьюнити разработчиков-волонтёров - ну, и они просто прикольные.</p>
39 <p>На самом деле ежедневно я использую гораздо больше CLI-инструментов, но из всего своего зоопарка утилит хочу выделить именно эти. Именно с ними я люблю возиться больше всего. Ещё мне нравится, что большинство этих инструментов поддерживаются комьюнити разработчиков-волонтёров - ну, и они просто прикольные.</p>
40 <a><b>Бесплатный курс по Python ➞</b>Мини-курс для новичков и для опытных кодеров. 4 крутых проекта в портфолио, живое общение со спикером. Кликните и узнайте, чему можно научиться на курсе. Смотреть программу</a>
40 <a><b>Бесплатный курс по Python ➞</b>Мини-курс для новичков и для опытных кодеров. 4 крутых проекта в портфолио, живое общение со спикером. Кликните и узнайте, чему можно научиться на курсе. Смотреть программу</a>