.
This commit is contained in:
66
test.sh
66
test.sh
@@ -25,21 +25,63 @@ echo -e "${CS[color,LightGreen]}Detected system: $distrib_name${CS[color,Default
|
||||
|
||||
echo ""
|
||||
|
||||
arch=$(uname -m)
|
||||
kernel=$(uname -r)
|
||||
if [ -n "$(command -v lsb_release)" ]; then
|
||||
distroname=$(lsb_release -s -d)
|
||||
elif [ -f "/etc/os-release" ]; then
|
||||
distroname=$(grep PRETTY_NAME /etc/os-release | sed 's/PRETTY_NAME=//g' | tr -d '="')
|
||||
elif [ -f "/etc/debian_version" ]; then
|
||||
distroname="Debian $(cat /etc/debian_version)"
|
||||
elif [ -f "/etc/redhat-release" ]; then
|
||||
distroname=$(cat /etc/redhat-release)
|
||||
|
||||
|
||||
giveUp () {
|
||||
echo "Unknown"
|
||||
exit 0
|
||||
}
|
||||
|
||||
# keep this easily awkable, prepending an initial clue
|
||||
versionGuess () {
|
||||
if [ -e /proc/version ]; then
|
||||
echo -n "Unsure "
|
||||
cat /proc/version
|
||||
exit 0
|
||||
fi
|
||||
return 1
|
||||
}
|
||||
|
||||
# if we have ignition, print and exit
|
||||
gotDist () {
|
||||
[ -n "$1" ] && echo "$1" && exit 0
|
||||
}
|
||||
|
||||
# we are only interested in a single word "dist" here
|
||||
# various malformations can occur; admin will have to code appropately based on output
|
||||
linuxRelease () {
|
||||
if [ -r /etc/lsb-release ]; then
|
||||
dist=$(grep 'DISTRIB_ID' /etc/lsb-release | sed 's/DISTRIB_ID=//' | head -1)
|
||||
gotDist "$dist"
|
||||
fi
|
||||
|
||||
dist=$(find /etc/ -maxdepth 1 -name '*release' 2> /dev/null | sed 's/\/etc\///' | sed 's/-release//' | head -1)
|
||||
gotDist "$dist"
|
||||
|
||||
dist=$(find /etc/ -maxdepth 1 -name '*version' 2> /dev/null | sed 's/\/etc\///' | sed 's/-version//' | head -1)
|
||||
gotDist "$dist"
|
||||
|
||||
return 1
|
||||
}
|
||||
|
||||
# start with uname and branch the decision from there
|
||||
dist=$(uname -s 2> /dev/null)
|
||||
if [ "$dist" = "Linux" ]; then
|
||||
linuxRelease
|
||||
versionGuess
|
||||
giveUp
|
||||
elif [ -n "$dist" ]; then
|
||||
echo "$dist"
|
||||
exit 0
|
||||
else
|
||||
distroname="$(uname -s) $(uname -r)"
|
||||
versionGuess
|
||||
giveUp
|
||||
fi
|
||||
|
||||
echo "${distroname}"
|
||||
# we shouldn't get here
|
||||
giveUp
|
||||
# done
|
||||
|
||||
|
||||
|
||||
exit 0
|
||||
Reference in New Issue
Block a user