chore(scripts): get-distro support windows

This commit is contained in:
Zaiming (Stone) Shi 2022-01-10 10:54:24 +01:00
parent 8a92b9dafa
commit 4897e00aab
1 changed files with 23 additions and 14 deletions

View File

@ -5,18 +5,27 @@
set -euo pipefail set -euo pipefail
if [ "$(uname -s)" = 'Darwin' ]; then UNAME="$(uname -s)"
DIST='macos'
VERSION_ID=$(sw_vers | gsed -n '/^ProductVersion:/p' | gsed -r 's/ProductVersion:(.*)/\1/g' | gsed -r 's/([0-9]+).*/\1/g' | gsed 's/^[ \t]*//g') case "$UNAME" in
SYSTEM="$(echo "${DIST}${VERSION_ID}" | gsed -r 's/([a-zA-Z]*)-.*/\1/g')" Darwin)
elif [ "$(uname -s)" = 'Linux' ]; then DIST='macos'
if grep -q -i 'centos' /etc/*-release; then VERSION_ID=$(sw_vers | gsed -n '/^ProductVersion:/p' | gsed -r 's/ProductVersion:(.*)/\1/g' | gsed -r 's/([0-9]+).*/\1/g' | gsed 's/^[ \t]*//g')
DIST='centos' SYSTEM="$(echo "${DIST}${VERSION_ID}" | gsed -r 's/([a-zA-Z]*)-.*/\1/g')"
VERSION_ID="$(rpm --eval '%{centos_ver}')" ;;
else Linux)
DIST="$(sed -n '/^ID=/p' /etc/os-release | sed -r 's/ID=(.*)/\1/g' | sed 's/"//g')" if grep -q -i 'centos' /etc/*-release; then
VERSION_ID="$(sed -n '/^VERSION_ID=/p' /etc/os-release | sed -r 's/VERSION_ID=(.*)/\1/g' | sed 's/"//g')" DIST='centos'
fi VERSION_ID="$(rpm --eval '%{centos_ver}')"
SYSTEM="$(echo "${DIST}${VERSION_ID}" | sed -r 's/([a-zA-Z]*)-.*/\1/g')" else
fi DIST="$(sed -n '/^ID=/p' /etc/os-release | sed -r 's/ID=(.*)/\1/g' | sed 's/"//g')"
VERSION_ID="$(sed -n '/^VERSION_ID=/p' /etc/os-release | sed -r 's/VERSION_ID=(.*)/\1/g' | sed 's/"//g')"
fi
SYSTEM="$(echo "${DIST}${VERSION_ID}" | sed -r 's/([a-zA-Z]*)-.*/\1/g')"
;;
CYGWIN*|MSYS*|MINGW*)
SYSTEM="windows"
;;
esac
echo "$SYSTEM" echo "$SYSTEM"