Home

Update: 28. Februar 2017

 

Das Einfachste an der gesamten Geschichte sind die Systeminformationen. Hier ist das passende Skript dazu:

01: hostname=$(scutil --get ComputerName)
02: username=$(whoami)
03: mem=$(sysctl -n hw.memsize | awk '{print $0/1073741824" GB RAM"}')
04: cpu=$(sysctl -n machdep.cpu.brand_string)
05: os=$(sw_vers | grep 'ProductName' | awk '{print $2" "$3" "$4}')
06: osversion=$(sw_vers | grep 'ProductVersion' | awk '{print $2}')
07: myen0=$(ifconfig en0 | grep "inet " | awk '{print $2}')
08: if [ "$myen0" = "" ]
09: then
10: myen0="N/A"
11: fi
12: myen1=$(ifconfig en1 | grep "inet " | awk '{print $2}')
13: if [ "$myen1" = "" ]
14: then
15: myen1="N/A"
16: fi
17: mywan=$(dig +short myip.opendns.com @resolver1.opendns.com)
18: if [ "$mywan" = "" ]
19: then
20: mywan="N/A"
21: fi
22:
23: echo "Hostname: \t\t $hostname"
24: echo "Username: \t\t $username"
25: echo "Memory: \t\t $mem"
26: echo "CPU: \t\t\t $cpu"
27: echo "OS: \t\t\t\t $os $osversion"
28: echo "Ethernet IP: \t\t $myen0"
29: echo "Wireless IP: \t\t $myen1"
30: echo "Internet IP: \t\t $mywan"

Zeilen 1 bis 6:
Die Systeminformationen werden zunächst abgefragt und in entsprechenden Variablen abgelegt.

Zeile 7:
Die IP Adresse der Ethernetschnittstelle wird abgefragt. Ja, mein Macbook Pro hat mehr als nur ein paar USB-C Buchsen ;-)

Zeilen 8 bis 11:
Sollte die Ethernetschnittstelle keine IP haben, wird die Variable "myen0" mit "N/A" belegt.

Zeilen 12 bis 16:
Der selbe Vorgang wird für die WLAN Schnittstelle wiederholt.

Zeile 17:
Meine externe IP Adresse wird abgefragt. Ich hab im Netz meistens Beispiele gefunden, die die Internet IP per http bei Dyndns abgerufen haben. Diese Abfrage führte bei mir jedoch regelmäßig  zu timeout Fehlern. Die Abfrage per dig funktioniert bei mir deutlich besser.

Zeilen 18 bis 21:
Bei einer fehlenden IP Adresse wird auch hier die Variable mit "N/A" belegt.

Zeilen 23 bis 30:
Die abgefragten Informationen werden auf dem Bildschirm angezeigt. Je nach Schriftart müsst ihr die Anzahl der Tabulatorsprünge (\t) anpassen.

Alle Skripte findet Ihr zum Download auf Github. Verbesserungen sind willkommen!