Debian-Lösung:
Um herauszufinden, ob ein Computer, auf dem Debian ausgeführt wird, ein Laptop ist, versuchen Sie:
[ -d /sys/module/battery ] && echo "Yes it's a laptop"
Dieser Ansatz erfordert keine rootBerechtigungen.
Auf anderen Distributionen scheint dieses Verzeichnis jedoch zumindest in Skelettform zu existieren, unabhängig davon, ob eine Batterie vorhanden ist oder nicht. Aus den Kommentaren (unten) geht hervor, dass diese Distributionen CentOS, Ubuntu und die von Ubuntu abgeleitete Distribution von Linux Mint umfassen.
Allgemeinere Lösung
Obwohl es auf meinen Debian-Systemen nicht funktioniert, funktioniert die von Alex vorgeschlagene Lösung Berichten zufolge auf Ubuntu & CentOS. Aus Gründen der Allgemeinheit wird daher eine mögliche kombinierte Lösung vorgeschlagen:
[ -f /sys/module/battery/initstate ] || [ -d /proc/acpi/battery/BAT0 ] && echo "Yes it's a laptop"
Dieser Ansatz erfordert keine rootBerechtigungen.
Mehr Details
Auf einem Debian-System mit einer tatsächlichen Batterie /sys/module/batteryenthält das Verzeichnis viele Dateien. Eine solche Datei /sys/module/battery/initstateenthält den Text live. Unter Ubuntu existieren diese Dateien jedoch nicht einmal auf tatsächlichen Laptops. Es scheint also, dass das Vorhandensein der Datei /sys/module/battery/initstatezum Testen eines Laptops unter Debian verwendet werden kann.
Auf Debian-Systemen, die ich getestet habe, /proc/acpi/batteryexistierte das Verzeichnis dagegen nicht.