如何從 WSL Ubuntu shell 檢查 Microsoft Surface 上的電池電量?

如何從 WSL Ubuntu shell 檢查 Microsoft Surface 上的電池電量?

網路上有很多教學課程在 ubuntu 終端機中檢查電池電量。最常見的解決方案似乎是使用upower.但是,當我upower在 Surface Pro 上的 Windows 10 中的 WSL Ubuntu shell 中運行時,我得到以下資訊:

user@sp4-2637:~/the_thing$ sudo upower

(upower:665): UPower-WARNING **: Cannot connect to upowerd: Could not connect: No such file or directory

使用 sudo 權限運行會產生相同的結果。

在我的運行本機 ubuntu 的筆記型電腦上,我可以像這樣查詢電池電量;

cat /sys/class/power_supply/BAT0/capacity

但是,這會在我的 Surface 上產生以下結果:

user@sp4-2637:~$ cat /sys/class/power_supply/BAT0/capacity
cat: /sys/class/power_supply/BAT0/capacity: No such file or directory

如何在 Microsoft Surface 的 WSL ubuntu shell 中查詢電池電量?

答案1

當我寫這個問題時,我找到了解決方案,所以我想我會分享它。

我不知道這是否是 Surface 硬體或 WSL ubuntu 版本的特性,但此設定的目錄結構似乎有所不同:

user@sp4-2637:~$ ls /sys/class/power_supply/
ac  battery  usb

BAT0我可以在以下位置找到電池電量,而不是查看目錄battery

user@sp4-2637:~$ cat /sys/class/power_supply/battery/capacity
100

答案2

我的帶有 WSL2 Ubuntu shell 的 Surface-Book-2 的電池電量為/sys/class/power_supply/BAT1/capacity

根據硬體的不同,它可能會有所不同。嘗試以下位置

/sys/class/power_supply/BAT1/capacity
/sys/class/power_supply/BAT0/capacity
/sys/class/power_supply/battery/capacity

答案3

如果 tlp 是 WSL Ubuntu shell 上可用的軟體包,您可以執行以下命令

sudo tlp stat -b

相關內容