Wie kann ich das Betriebssystem und die Hostnamen mit Common Lisp bestimmen?
-
09-10-2019 - |
Frage
Zu meiner .sbclrc Datei arbeitet an den beiden Computern bekomme ich, würde ich einen Weg, wie die Hostnamen und / oder Betriebssystem von innen sbcl zu bekommen. Ich weiß, ich einstellen könnte und dann für eine Umgebungsvariable, aber gibt es einen direkteren Ansatz?
Aktualisieren
änderte ich die Frage zu Common Lisp zu beziehen, da die Antwort von Ken nicht spezifisch für sbcl ist.
Lösung
würde ich die ' Umgebung ' Funktionen:
* (machine-instance)
"myhostname"
* (machine-type)
"X86-64"
* (machine-version)
"Intel(R) Core(TM)2 Quad CPU Q6600 @ 2.40GHz"
* (software-type)
"Linux"
* (software-version)
"2.6.32-3-amd64"
Andere Tipps
* (require :sb-bsd-sockets)
("SB-BSD-SOCKETS" "SB-GROVEL" "ASDF")
* (use-package :sb-bsd-sockets)
T
* (host-ent-name (get-host-by-name "localhost"))
"myhost.mydomain.ext"
* (find :win32 *features*)
:WIN32
* (find :linux *features*)
NIL
EDIT: Ich mag @ Ken-Lösung besser. +1.
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow