Uczę się podstaw pisania skryptów i próbuję napisać skrypt, aby zdecydować, jaki smak Linux ma uruchamiać. Opracowałem następującą prostą wersję:
#!/bin/sh
which yum >/dev/null && { echo Fedora flavour; exit 0; }
which zypper >/dev/null && { echo Suse of sorts; exit 0; }
which apt-get >/dev/null && { echo Debian based; }
Czy jest bardziej wdzięczny sposób, aby zdecydować, na którym smaku Linuxa używam? Czy istnieje sposób na włączenie Uniksa - lub uczynienie go generycznym dla Xnix?
Wielkie dzięki.
Edycja: nie jest to duplikat Jak rozpoznać używaną dystrybucję Linuksa? z następujących powodów: W przypadku Ubuntu cat /etc/lsb-release
działa jak urok, w przypadku RedHata tak nie jest.
ls /etc/*release
robi, ale wyświetla trzy foldery. cat /proc/version
wygląda obiecująco, ale potrzebuje magii wyrażeń regularnych.
/etc/lsb-release
będzie działać na dystrybucjach rodziny Red Hat, jeśli zainstalujesz pakiety LSB - ale my domyślnie nie.