Ich möchte die aktuellen Lüftergeschwindigkeiten meines MacBook und iMac über das Terminal anzeigen. Ich habe festgestellt, dass das Ausführen spindump
dann cat /tmp/spindump.txt | grep "Fan speed"
es zeigt, aber das ist sehr langsam und prozessorintensiv. Ich hätte gerne einen schnelleren und effizienteren Weg, dies zu tun.
Ich würde lieber keine Software von Drittanbietern installieren, aber ich werde es tun, wenn es der einzige Weg ist.
Hat jemand einen Vorschlag, wie ich das bewerkstelligen könnte?
Danke
Sie erwähnen in Ihren Kommentaren, dass smcFanControl installiert ist; Dieses Open-Source-Projekt enthält das Befehlszeilentool smc
. Sie können verwenden smc
, um Informationen zur Lüftergeschwindigkeit über Terminal.app zu erhalten:
smc -f
Weitere Optionen finden Sie auf der Handbuchseite von smc .
Seit Mac OS X 10.5 müssen Sie eine Software eines Drittanbieters verwenden, um auf die Informationen zur Lüftergeschwindigkeit zuzugreifen. Es scheint, dass kein Tool, das standardmäßig auf OS X installiert ist, diese Informationen über das Terminal verfügbar macht.
Das Open-Source-Projekt Fan Control enthält ein Befehlszeilentool, das Informationen zur Lüftergeschwindigkeit bereitstellt. Dieser Artikel, OS X: Aktuelle CPU-Temperatur in der Befehlszeile , spricht über das Projekt und wie man die Lüftergeschwindigkeit extrahiert:
smc -k TC0D -r | sed 's/.*bytes \(.*\))/\1/' |sed 's/\([0-9a-fA-F]*\)/0x\1/g' | perl -ne 'chomp; ($low,$high) = split(/ /); print (((hex($low)*256)+hex($high))/4/64); print "C\n";'
spindump
erfordert Administratorrechte und wenn es manuell ausgeführt wird, testet Spindump Benutzer- und Kernel-Stacks für jeden Prozess im System. Dies ist ein rechenintensiver Prozess, selbst wenn er nur eine Sekunde lang ausgeführt wird.
Andere Tools und Anwendungen sind vorhanden, einschließlich Temperature Monitor . Siehe Kann ich die CPU-Temperatur und Lüftergeschwindigkeit über die Befehlszeile in OS X abrufen?
Dieser Artikel, Sensorinformationen abrufen , zeigt, wie Sie ioreg
die Informationen zur Lüftergeschwindigkeit extrahieren können mit:
ioreg -c IOHWSensor | grep -B3 -A11 '"type" = "fanspeed"'
Der obige Artikel und das darin enthaltene Skript wurden für Mac OS X 10.4.3 entwickelt.
Siehe auch:
cd /Applications/smcFanControl.app/Contents/Resources/
brew install Caskroom/cask/smcfancontrol
und die Verwendung erfordert auch ein Passwort.Auf Mojave scheint Spindump die Lüftergeschwindigkeit nicht aufzulisten. Ich habe jedoch bemerkt, dass Powermetrics dies tut. Versuche sudo powermetrics -i 200 --samplers smc | grep Fan
stattdessen zu laufen.
unable to get smc values
Ah, aus irgendeinem Grund kann es auf meinem Mac Mini ( )
keine SMC-Werte lesen .sudo powermetrics -i 1 -n 1 --samplers smc
für ein schnelleres Ergebnis. Powermetrics hat standardmäßig eine Verzögerung/ein Intervall von 5 Sekunden.Oneliner - gibt nach 1 Sekunde mit Spindump eine Ausgabe aus
SD=~/.spindump.txt;sudo rm $SD;sudo spindump 1 1 -file "$SD" ;grep "Fan speed" $SD
Jeder einzelne Teil erklärt:
SD=~/.spindump.txt
: Erstellen Sie eine Variable mit dem .spindump.txt-Protokoll
sudo rm $SD
: Bereinigen Sie Ihre tmp-Datei mit sudo-Rechten, da die Datei von sudo spindump erstellt wurde.
sudo spindump 1 1 -file $SD
: Führen Sie Spindump als root (es läuft nur als root) für 1 Sekunde in 1 Intervall aus und geben Sie die Datei an Ihr $SD aus
grep "Fan speed" $SD
: Holen Sie sich die Zeile, die "Lüftergeschwindigkeit" sagt
Es ist sehr bedauerlich, dass wir sudo-Rechte benötigen, um dieses Skript auszuführen.
> SD=~/.spindump.txt;sudo rm $SD;sudo spindump 1 1 -file "$SD" ;grep "Fan speed" $SD
Password:
Sampling all processes for 1 seconds with 10 milliseconds of run time between samples
Focusing on launchd [1]
Sampling completed, processing symbols...
Spindump analysis written to file /Users/CousinCocaine/.spindump.txt
Fan speed: 2302 rpm
sudo spindump 1 1 -file /tmp/spindump.txt > /dev/null 2>&1;grep "Fan speed" /tmp/spindump.txt
Beim einen Versuch klappt es, beim nächsten Versuch klappt es nichtVersuchen Sie es sudo powermetrics -s smc
. Um die Aktualisierungsrate zu ändern, verwenden Sie sudo powermetrics -s smc -i <milliseconds>
.
Verwenden Sie das powermetrics
integrierte Tool und fragen Sie nach einem einzelnen Beispiel ( -i 1 -n 1
), um eine schnelle Antwort zu erhalten.
$ sudo powermetrics -i 1 -n 1 --samplers smc | grep ^Fan
Fan: 2987 rpm
Ich habe einen MBA mit SMC-Problemen und diese App löst mein Problem. Das smcFanControl funktioniert bei mir nicht und ich habe auch FanControl ausprobiert. In GNU/Linux kann ich die Max- und Min-Werte über das Terminal einstellen, also muss ich dasselbe in einem Unix-System tun, wenn ich es in GNU/Linux kann. Diese App ist Macs Fan Control https://github.com/crystalidea/macs-fan-control/releases/download/v1.4.12/macsfancontrol.zip
Ich hoffe, dass ich auch für Sie arbeite
Klicken Sie dreimal auf Folgendes, kopieren Sie es und fügen Sie es in Terminal ein:
sudo spindump 1 1 -file /tmp/spindump.txt > /dev/null 2>&1;grep "Fan speed" /tmp/spindump.txt;sudo rm /tmp/spindump.txt
Es sollte die Lüftergeschwindigkeit ausgeben.
bot47
Joseph
Graham Mill
smc
verwenden, um die Lüftergeschwindigkeit abzurufen; github.com/hholtmann/smcFanControl/tree/master/smc-commandCousinKokain
man spindump
) und Sie können die Zeit einstellen, die es zum Ausführen benötigt. Die Antwort ist unten.Grau