Ich habe eine persönliche Bash-Bibliothek und ein Scripting-Framework geschrieben , das GNU shtool verwendet , um eine ziemlich genaue Plattformerkennung .
GNU shtool ist ein sehr portabler Satz von Skripten, der unter anderem den Befehl 'shtool platform' enthält. Hier ist die Ausgabe von:
shtool platform -v -F "%sc (%ac) %st (%at) %sp (%ap)"
auf einigen verschiedenen Maschinen:
Mac OS X Leopard:
4.4BSD/Mach3.0 (iX86) Apple Darwin 9.6.0 (i386) Apple Mac OS X 10.5.6 (iX86)
Ubuntu Jaunty server:
LSB (iX86) GNU/Linux 2.9/2.6 (i686) Ubuntu 9.04 (iX86)
Debian Lenny:
LSB (iX86) GNU/Linux 2.7/2.6 (i686) Debian GNU/Linux 5.0 (iX86)
Dies führt zu ziemlich zufriedenstellenden Ergebnissen, wie Sie sehen können. GNU shtool ist etwas langsam, daher speichere und aktualisiere ich die Plattformidentifikation tatsächlich in einer Datei auf dem System, das meine Skripte aufrufen. Es ist mein Rahmen, so dass es für mich funktioniert, aber Ihr Kilometerstand kann variieren.
Jetzt müssen Sie einen Weg finden, shtool mit Ihren Skripten zu verpacken, aber es ist keine schwierige Übung. Sie können auch jederzeit auf die Ausgabe ohne Namen zurückgreifen.
BEARBEITEN:
Ich habe den Beitrag von Teddy über config.guess
(irgendwie) verpasst . Dies sind sehr ähnliche Skripte, aber nicht die gleichen. Ich persönlich benutze shtool auch für andere Zwecke und es hat für mich ganz gut funktioniert.