Как получить информацию о дистрибутиве Kubuntu через командную строку
В мире операционных систем Linux, информация об используемом дистрибутиве может быть ключевой для выполнения различных задач. Если вы используете Kubuntu 22.04.5 LTS на 64-битной архитектуре, и вам необходимо получить информацию о системе, многие пользователи прибегают к программе neofetch. Однако, что делать, если вы хотите получить аналогичный результат, не прибегая к сторонним инструментам? В этой статье мы разберем, как получить информацию о вашем дистрибутиве и что делать, если требуется отображение Kubuntu вместо Ubuntu в выводе команд.
Вывод информации с помощью neofetch
Программа neofetch — это удобный инструмент, который предоставляет информацию о системе в красивом виде. Например, чтобы получить информацию о вашей системе, можно использовать команду:
neofetch --stdout | grep 'OS:'
Применяя указанную команду, вы получите результат, содержащий название дистрибутива, например:
OS: Kubuntu 22.04.5 LTS x86_64
Но возникает вопрос: как neofetch выводит букву "K" перед "Ubuntu"?
Как neofetch определяет дистрибутив
На самом деле, neofetch не использует никакой специальной команды для добавления буквы "K" к названию дистрибутива. Вместо этого, он получает данные о дистрибутиве из системы. Если neofetch обнаруживает, что вызывающая среда рабочего стола — это KDE Plasma, он заменяет "Ubuntu" на "Kubuntu". Эта логика заложена в его исходном коде, который доступен на GitHub.
Вот как это реализовано в коде:
if [[ $distro == "Ubuntu"* ]]; then
case $XDG_CONFIG_DIRS in
*"plasma"*) distro=${distro/Ubuntu/Kubuntu} ;;
esac
fi
Таким образом, налицо ручное добавление "K", и программа хранит логику выбора дистрибутива в своем коде.
Альтернативные команды для получения информации о дистрибутиве
Если вы хотите получить информацию о вашем дистрибутиве, не используя neofetch или дополнительные утилиты, вы можете использовать стандартные команды Linux. Вот примеры:
lsb_release -sd && lsb_release -sr && lsb_release -si
Однако, стоит отметить, что эта команда вернет вам результат:
Ubuntu 22.04.5 LTS
22.04
Ubuntu
Как видно, буква "K" отсутствует, поскольку команде не хватает логики для определения того, что используется Kubuntu.
Как обойти это ограничение?
Вы можете использовать файл /etc/os-release
, который содержит информацию о дистрибутиве. Однако, вся суть в том, что Kubuntu, как подмножество Ubuntu, будет все равно отправлять значение "Ubuntu". Другой подход заключается в использовании команд для обработки данных:
lsb_release -sd | sed 's/Ubuntu/Kubuntu/' && echo "$(uname -m)"
Данная команда заменит "Ubuntu" на "Kubuntu" в выводе, предоставляя вам желаемый результат:
Kubuntu 22.04.5 LTS
x86_64
Заключение
Использование термина Kubuntu вместо Ubuntu в командной строке — задача, которая требует применения специфических команд. В то время как neofetch делает это автоматически, самой командой Bash это сделать будет проблематично без некоторых манипуляций. Если вам нужно регулярное отображение информации о вашем дистрибутиве, использование sed или ручное редактирование вывода может стать вашим решением. Убедитесь, что вы изучили доступные вам инструменты, чтобы максимально эффективно использовать вашу систему Linux.