Как получить кодовое имя ubuntu из elementary os?

Часто, когда мы пытаемся установить какое-либо программное обеспечение в elementary os, используя команды терминала, такие как следующие:

wget -O- https://apt.releases.hashicorp.com/gpg | gpg --dearmor | sudo tee /usr/share/keyrings/hashicorp-archive-keyring.gpg
echo "deb [signed-by=/usr/share/keyrings/hashicorp-archive-keyring.gpg] https://apt.releases.hashicorp.com $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/hashicorp.list
sudo apt update && sudo apt install vagrant
Войти в полноэкранный режим Выйти из полноэкранного режима

Сценарий ищет действительную версию ubuntu, выполняя команду lsb_release -cs. И он вернет кодовое имя elementary os, но не кодовое имя ubuntu. Но требуется именно кодовое имяubuntu. Следующий сценарий не совсем решает проблему. Но он удобен для получения кода ubuntu и замены его там, где это необходимо.

# Reads the /etc/os-release file and reads the file into a dictionary named os_release. 
# Please read https://unix.stackexchange.com/a/433245/298979 to understand why sourcing and awk are poor ideas to replicate the same in those methods.
if test -r /etc/os-release
    then
        declare -A os_release
        while IFS="=" read -r key value
            do
                os_release[$key]=$value
        done < /etc/os-release
        alias uc="echo ${os_release[UBUNTU_CODENAME]}" #Get ubuntu code name
    else
        echo "Unable to read /etc/os-release file to get ubuntu code"
fi
Вход в полноэкранный режим Выход из полноэкранного режима

Оцените статью
devanswers.ru
Добавить комментарий