Batteriestand per Konsole auf Debian abrufen

Hallo zusammen,

ich möchte gerne an meinem Laptop, auf dem Debian 5.0 läuft, den Batteriestand per Konsole ausgeben lassen. Der Laptop ist ein Acer Travelmate, falls das wichtig ist…

Hoffe ihr könnt mir Tipps geben,
Gruß pcfreak92

Hallo pcfreak92,

ich möchte gerne an meinem Laptop, auf dem Debian 5.0 läuft,
den Batteriestand per Konsole ausgeben lassen.

Wenn Du das Paket acpi-support installiert hast, kannst Du mit

cat /proc/acpi/battery/BAT0/status

bzw.

cat /proc/acpi/battery/BAT0/state

je nach deutscher oder engl. Einstellung, die Batterie auf der Komandozeile auslesen.
Allgemeine Infos über deine Batterie bekommst Du mit

cat /proc/acpi/battery/BAT0/info

Viele Grüße
Marvin

Vielen Dank, das ist genau das was ich gesucht habe.
Allerdings gibt’s noch ein kleines Problem: Wenn ich das ganze mit PHP ausgeben lasse, ist der Text am Stück ohne Absätze…
Habe den Batteriestand in PHP so ausgegeben:

<?php echo system ('cat /etc/acpi/battery/BAT1/state');<br />?\>

Wie kann ich das so ausgeben, wie es in der Konsole angezeigt wird?

Vielen Dank nochmal,
Gruß pcfreak92

Moien

Allerdings gibt’s noch ein kleines Problem: Wenn ich das ganze
mit PHP ausgeben lasse, ist der Text am Stück ohne Absätze…

Klar. HTML kennt keinen Zeilenumbruch mit \n. In HTML muss man die \n durch das Tag
ersetzen … und wie das geht weiss das php-brett.

cu

Hallo pcfreak92,

Wenn ich das ganze
mit PHP ausgeben lasse, ist der Text am Stück ohne Absätze…

Wie kann ich das so ausgeben, wie es in der Konsole angezeigt
wird?

Ist ja wie von hinten durch die Brust ins Auge schiessen :wink: Ich dachte, Du wolltest das auf der Konsole haben?
Wenn ich dich da falsch verstanden habe, kann ich dir z.B. KPowersave
http://www.kde-apps.org/content/show.php?content=29295
oder den GNOME Power Manager
http://projects.gnome.org/gnome-power-manager/
empfehlen, je nachdem, ob Du Gnome oder KDE bevorzugst. Für KDE4 gibt es bestimmt auch ein nettes Applet für den Zweck.
Oder willst Du dein PHP-Skript nur so zur Übung schreiben?

Viele Grüße
Marvin

Ich möchte im Browser den Akkustand abrufen können, und weil man in PHP das (eigentlich) komfortabel per system() Befehl machen kann, wollte ich das per Konsole abrufen. Ich habe auf dem Server nur eine Konsole, keine grafische Oberfläche, ich weiß nicht, ob ich da dann auch KDE Programmer kaufen lassen kann…

Gruß pcfreak

Hallo pcfreak92,

Ich möchte im Browser den Akkustand abrufen können

Manchmal bin ich wirklich schwer von Begriff :wink: Gut, jetzt ist alles geklärt und ob die Anzeige per Lynx, w3m o.ä. nun komfortabler als die per Kommandozeile ist, will ich gar nicht mehr nachfragen.
Wie pumpkin schon sagte, musst Du die Zeilenumbrüche mittels str_replace durch
ersetzen, z.B. so:

$text = "Das ist die \n Ausgabe";
$text = str\_replace("\n", "
", $text);
echo $text; // Jetzt wird der Text umgebrochen

Viele Grüße
Marvin

Im PHP Forum hab ich den Ansatz schon gepostet, alleridngs funktioniert das mit str_replace nicht, es wird nur eine Zeile ausgegeben…

Hallo pcfreak92,

funktioniert das mit str_replace nicht, es wird nur eine Zeile
ausgegeben…

Hm, stimmt. Bin gespannt, was die php-Freaks für eine Lösung haben. In diesem Skript werden die Zeilenumbrüche tatsächlich nicht umgewandelt, sondern alles kommt so wieder raus, wie es reingesteckt wurde.
Merkwürdigerweise funktioniert das hier:

$str = "Zeile 1\nZeile 2\nZeile 3\n\nZeile 4\n";
$zeichen = array("\n");
$replace = '
';
echo str\_replace($zeichen, $replace, $str);

gibt sowas aus:

Zeile 1
Zeile 2
Zeile 3

Zeile 4

wenn ich aber den String so konstruiere:

$str = system ('cat /proc/cpuinfo');

wird nichts umgewandelt. Auch nl2br() brachte nichts :frowning:
http://de.php.net/manual/de/function.nl2br.php
Da sind wir jetzt schon zwei, die gespannt auf eine Lösung warten :wink:

Viele Grüße
Marvin

Hallo pcfreak92,
ich habe es mal mit einem Shell-Skript probiert und folgenden Ansatz genommen, der bei mir gut funkioniert:

cat /proc/cpuinfo | sed 's/$/
/'

Habe jetzt /proc/cpuinfo genommen, weil ich keine Batterie habe, bei mir läuft alles mit Strom :wink:
Aber das Prinzip dürfte klar sein.

Viele Grüße
Marvin

Perfekt! Genau so, wie du es beschrieben hast, funktioniert es einwandfrei.

Vielen Dank!
Gruß pcfreak92

acpi
Hallo,

einfach den Befehl acpi eingeben:

$ acpi
 Battery 0: Discharging, 99%, 26:34:02 remaining, design capacity 4400 mAh