Пользователям Linux хорошо известна комбинация клавиш Ctrl + R
— она применяется для поиска по истории команд в Bash. Зачастую, чтобы отыскать нужный фрагмент текста, ранее введённый в терминал, приходится нажимать Ctrl + R
не раз и не два.
Впрочем, больше нет необходимости «стирать до дыр» несчастные клавиши — благодаря McFly. Этот инструмент, созданный на основе нейросети, пришёл на замену обычному поиску по истории. В своём анализе McFly опирается на рабочую директорию и недавно выполненные команды.
Для поиска по истории команд McFly использует ту же комбинацию клавиш Ctrl + R
и имеет тот же базовый функционал, что и стандартный инструмент, но при этом улучшает его, позволяя выбрать нужную команду из списка, составленного на основе «умных» алгоритмов.
Установите McFly в качестве альтернативы стандартному поиску по истории команд на Linux
Для того чтобы установить McFly, нужно всего лишь скачать и запустить скрипт, созданный разработчиком McFly.
Откройте терминал и введите:
wget https://raw.githubusercontent.com/cantino/mcfly/master/ci/install.sh
sudo sh install.sh -- --git cantino/mcfly
Первая команда позволяет скачать скрипт для загрузки и установки контейнера Rust, размещённого на GitHub, а вторая — использует этот скрипт для скачивания и установки McFly.
Итак, McFly установлен, но чтобы использовать его в качестве замены стандартного поиска по истории команд, потребуется также отредактировать файл .bashrc с помощью nano:
nano ~/.bashrc
…и в конце файла добавить:
eval "$(mcfly init bash)"
Сохраните файл и выйдите из nano, нажав Ctrl + O
, а затем Ctrl + X
.
Закройте терминал и снова откройте его. В следующий раз, когда вы нажмёте Ctrl + R
, вместо стандартного поиска по истории команд будет запущен McFly.
Используйте McFly для поиска по истории Bash
Нажмите Ctrl + R
. На экране появится интерфейс терминала McFly с пустой командной строкой и списком из 10 наиболее вероятных команд.
Если нужная вам команда есть в списке, выделите её с помощью стрелок «Вверх/Вниз» на клавиатуре. Нажмите Enter для выполнения команды.
Если вы хотите отредактировать команду перед выполнением, выделите её и нажмите клавишу Tab. После этого снова появится командная строка с уже введённым текстом вашей команды. Отредактируйте текст и нажмите Enter.
Чтобы определить, какая команда вам нужна, McFly использует простую нейронную сеть. Учитываются следующие параметры:
- Директория, в которой вы сейчас находитесь;
- Как часто вы запускаете команду;
- Насколько успешно обычно выполняется команда;
- Выбирали ли вы ранее команду в McFly и когда в последний раз её использовали.
Обычно данные алгоритмы хорошо справляются со своей работой и позволяют без труда находить нужную команду. Однако если вам всё же захочется отключить функцию McFly, нажмите F1 — и вам снова будут отображаться последние команды, отсортированные по времени.
Если же вы захотите удалить компрометирующую вас или просто ненужную вам команду из истории, выберите её из списка и нажмите F2.
Используйте терминал Linux более эффективно
Теперь, когда вы можете более эффективно искать и выполнять команды из истории Bash, пора отказаться и от некоторых других старых добрых программ из 1970-х в пользу их современных улучшенных аналогов.
Используйте bat вместо cat, duf вместо df, и btop вместо top или htop!