Linux. Проверка версии ОС

Хочу написать скрипт, который в зависимости от ОС (gentoo или deb), устанавливал пакеты.

Есть кое-какие наброски, но определенно в них есть чтото неправильное.

#!/bin/sh

WHERE_IS=`whereis lsb_release | awk {'print $2'}`
EMERGE="emerge -av `eix lsb | grep release | awk {'print $2'}`"


if [ -z $WHERE_IS ]; then
    echo "$n не существует."
    $EMERGE
else
    echo "$n существует."
    echo $WHERE_IS
fi



Прошу идей, или каких то готовых решений. Я где то сталкивался с подобным, но не помню где.
  • Вопрос задан
  • 6023 просмотра
Решения вопроса 1
iandriyanov
@iandriyanov Автор вопроса
Приличный Скелет, на суд общественности:

#!/bin/sh

cmd0=`whereis emerge | awk {'print $2'}`

_new_check_lsb()
{
echo "Какая у вас ОС - Ubuntu или Gentoo? Или Help для того чтобы узнать какая у вас ОС"
read -p "Введите название: " yn

    case "${yn,,}" in
        gentoo)
            echo "test - gentoo"
            ;;
        ubuntu)
            echo "test - ubuntu"
            ;;
        help)
            if [ "$cmd0" = "" ]; then
                echo "Ubuntu"
            else
                echo "Gentoo"
            fi
            _new_check_lsb
            ;;
        *)
            echo "Вы не чего не ввели"
            ;;
    esac

}
_new_check_lsb
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 5
BuriK666
@BuriK666
Компьютерный псих
#!/bin/bash
if [ -e /etc/gentoo-release ]; then 
    echo "Gentoo"
elif [ -e /etc/debian_version ]; then 
        echo "Debian"
fi
Ответ написан
rasa
@rasa
Не здесь сталкивались с подобным?
Ответ написан
g0lden
@g0lden
Я бы взял за основу вывод «uname -a», если конечно это не слишком примитивно в рамках поставленной задачи.

Можно также заглянуть в скрипт от virtualbox'а для гостевых ОС, насколько я помню он определяет в какой ОСи его запускают, хотя могу ошибиться, посмотреть сейчас нет возможности.
Ответ написан
Комментировать
DeGato
@DeGato
Есть такое:

cat /etc/issue

по умолчанию там обычно версия ОС
Ответ написан
Комментировать
gricom
@gricom
обычно мне gcc помогает, когда хочется узнать версию ОС. Просто распарсить вывод gcc --version
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы