Терминал Linux: Подсветка ключевых слов, аналогичная MobaXTerm, без использования конвейеров

Вопрос или проблема

Когда я подключаюсь к машине с Linux через SSH из Windows, используя MobaXTerm, я получаю преимущество в виде подсветки синтаксиса (https://mobaxterm.mobatek.net/features.html –> смотрите Подсветка синтаксиса в терминале). Она автоматически выделяет ключевые слова, такие как error, pass, failed, missing и т.д. Мне это крайне полезно при выполнении сценариев, которые выдавают много отладочного текста — подсветка помогла мне заметить ошибки, которые я пропустил на протяжении нескольких месяцев из-за громоздкости сообщений.

Я знаю, что такие программы, как VIM, имеют подсветку синтаксиса, но это на уровне программы и специфично для языка (или типа файла).

Я ищу такую же подсветку, как в MobaXTerm, но на уровне терминала Linux. В настоящее время мне приходится переключаться на Windows и подключаться к машине с Linux только для того, чтобы иметь эту функцию, что утомительно. Было бы здорово, если бы существовал плагин для терминала.

Подсветка синтаксиса в терминале предлагает несколько решений, но требует, чтобы вывод направлялся на внешнюю программу.

https://github.com/cocalele/PuTTY-en/tree/lele-main
в этой ветке PuTTY имеется подсветка ключевых слов, но только для нескольких ключевых слов: error, exception, fail, fatal, warn.

Эти ключевые слова зашиты в файл https://github.com/cocalele/PuTTY-en/blob/lele-main/terminal/keyword-match.c.

Ответ или решение

Вопрос о подсветке синтаксиса в терминале Linux при удаленном подключении по SSH – это важная тема для многих разработчиков и системных администраторов. Многие пользователи MobaXterm оценили его преимущества в визуализации выходных данных, особенно когда дело касается выявления ключевых слов, таких как error, pass, failed и других. Это значительно упрощает анализ сообщений об ошибках, особенно в условиях большого объема выводимой информации.

Проблема

При SSH-подключении к Linux-машине из Windows с помощью MobaXterm пользователи получают подсветку ключевых слов в терминале, что отсутствует в стандартных терминалах Linux. Текущие решения, такие как использование grep и других утилит, требуют перенаправления вывода, что создает дополнительные сложности и может замедлять работу при анализе кода. Необходима возможность подсветки ключевых слов "на лету", без необходимости использования внешнего программного обеспечения.

Возможные решения

1. Использование bash с подсветкой

Некоторые версии bash поддерживают настройку подсветки ключевых слов в терминале. Для этого можно воспользоваться следующими инструкциями:

  • Проверка возможностей: Убедитесь, что у вас установлена последняя версия bash, чтобы улучшить поддержку возможности подсветки.

  • Настройка .bashrc: Откройте файл ~/.bashrc и добавьте следующие строки для включения цветового вывода:

    export PS1="\[\e[0;32m\]\u@\h:\w\$\[\e[m\] "
    alias ls='ls --color=auto'

    Это улучшит общую видимость команд, но не обеспечит полную подсветку ключевых слов в выводе команд.

2. Использование LESS с цветами

Вы можете настроить less, чтобы он подсказывал ключевые слова, когда вы просматриваете длинные выводы:

  • Установка: Установите less (если он еще не установлен) и убедитесь, что в файле конфигурации ~/.bashrc присутствует следующее:

    export LESS='-R'
    export LESSOPEN='|highlight -O ansi %F'

    Эта настройка позволяет вам использовать less для просмотра выводов с раскрашиванием ключевых слов. Однако она также требует перенаправления.

3. Использование bat вместо cat

bat – это более современная версия cat, которая подразумевает подсветку синтаксиса и выводит содержимое файлов с подсветкой. Установите bat через менеджер пакетов:

sudo apt install bat

Затем вы можете использовать bat для просмотра логов с более удобным и заметным отображением.

4. Патчи и плагины

Для опытных пользователей возможно использование отдельных патчей или расширений, которые создадут подобную функциональность:

  • Изучите репозиторий PuTTY-en и его возможности подсветки ключевых слов. Хотя он ограничен, это может быть временным решением для пользователей, работающих в Windows и желающих использовать PuTTY.

Заключение

На данный момент нет универсального решения для подсветки ключевых слов в реальном времени в терминале Linux, аналогичного тому, что предоставляет MobaXterm. Однако упомянутые методы могут помочь вам улучшить визуализацию вывода команд и имитацию необходимой подсветки при анализе логов и ошибок. يدق كلك لما تروح لتحليل وزراعاتية معَّاجات لابد عليك اقتضير كل مر سعت، لأن التكنلوجي تتطور بسرعة، سنرى вероятно появление новых возможностей в в следующих версиях программного обеспечения.

Приобретение навыков работы с этими инструментами может существенно упростить вашу работу и повысить продуктивность.

Оцените материал
Добавить комментарий

Капча загружается...