topalias - утилита для генерации коротких алиасов по истории bash/zsh
На GitHub опубликована открытая утилита для генерации коротких алиасов на основании истории работы в bash или zsh. Утилита анализирует файлы ~/.bash_aliases, ~/.bash_history и ~/.zsh_history с историей выполнения команд в терминале Linux, после чего предлагает короткие аббревиатуры (акронимы) для длинных, долго набираемых и сложно запоминаемых, но часто используемых команд. Также поддерживается вывод статистики по истории работы в командной строке.
Если вы работаете в терминале десятки раз в день, алиасы — это мощный инструмент повышения эффективности. Но с ростом количества проектов и конфигураций .bashrc/.zshrc алиасов становится много: часть дублируется, часть устарела, некоторые перекрывают системные команды. topalias решает три задачи:
дать метрику использования алиасов (какие используются чаще всего);
упростить создание/удаление/пакетное управление алиасами;
находить конфликтные или опасные алиасы и предлагать безопасные альтернативы.
В статье — обзор возможностей, примеры использования, внутренняя архитектура и практические рекомендации для интеграции с bash/zsh/fish.
Ключевые возможности
Сбор статистики использования алиасов на основе shell-history.
Команда top — список наиболее часто используемых алиасов.
Интерактивный режим (TUI) для обзора, включения/выключения и редактирования.
Поддержка bash, zsh и fish.
Экспорт/импорт в виде конфигурационных файлов и git-репозиториев.
Поиск конфликтов (алиас затеняет системную команду) и предупреждения.
Генератор «умных» алиасов: на основе частых цепочек команд предлагает сокращения.
Пакетная миграция между машинами (pack/unpack).
Небольшой daemon/cron для частого обновления статистики (опционально).