76 lines
2.3 KiB
Bash
Executable File
76 lines
2.3 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
# Globale Variablen für das Betriebssystem
|
|
OS=""
|
|
distro=""
|
|
version=""
|
|
codename=""
|
|
|
|
detect_os() {
|
|
echo "Das installierte Derivat wird ermittelt...."
|
|
OS=$(uname -s)
|
|
|
|
case $OS in
|
|
Linux*)
|
|
# Überprüfen, ob lsb_release verfügbar ist
|
|
if command -v lsb_release &> /dev/null; then
|
|
# Verwende lsb_release, wenn es verfügbar ist
|
|
distro=$(lsb_release -si)
|
|
version=$(lsb_release -sr)
|
|
codename=$(lsb_release -sc)
|
|
else
|
|
# Überprüfe /etc/os-release
|
|
if [ -f /etc/os-release ]; then
|
|
. /etc/os-release
|
|
distro=$NAME
|
|
version=$VERSION_ID
|
|
codename=$VERSION_CODENAME
|
|
# Überprüfe /etc/lsb-release
|
|
elif [ -f /etc/lsb-release ]; then
|
|
. /etc/lsb-release
|
|
distro=$DISTRIB_ID
|
|
version=$DISTRIB_RELEASE
|
|
codename=$DISTRIB_CODENAME
|
|
# Überprüfe /etc/debian_version
|
|
elif [ -f /etc/debian_version ]; then
|
|
distro="Debian"
|
|
version=$(cat /etc/debian_version)
|
|
codename=$(uname -r)
|
|
# Überprüfe /etc/redhat-release
|
|
elif [ -f /etc/redhat-release ]; then
|
|
distro=$(cat /etc/redhat-release)
|
|
version=$(uname -r)
|
|
codename=$(uname -r)
|
|
else
|
|
distro="Unbekannte Distribution"
|
|
version="Unbekannte Version"
|
|
codename="Unbekannter Codename"
|
|
fi
|
|
fi
|
|
|
|
# Ausgabe der ermittelten Informationen
|
|
echo "Distribution: $distro"
|
|
echo "Version: $version"
|
|
echo "Codename: $codename"
|
|
;;
|
|
*)
|
|
echo "Unsupported OS: $OS"
|
|
exit 1
|
|
;;
|
|
esac
|
|
|
|
echo "${OS} wurde ....... Ausgewählt......."
|
|
}
|
|
|
|
use_os_info() {
|
|
echo "Verwende Informationen über das Betriebssystem:"
|
|
echo "Distribution: $distro"
|
|
echo "Version: $version"
|
|
echo "Codename: $codename"
|
|
# Hier kannst du mehr Code hinzufügen, der die Variablen $distro, $version und $codename verwendet
|
|
}
|
|
|
|
# Hauptprogramm
|
|
detect_os
|
|
use_os_info
|