如何在 Linux 終端下檢查筆記本電池狀態

如何在 Linux 終端下檢查筆記本電池狀態

編譯自: https://www.ostechnix.com/how-to-check-laptop-battery-status-in-terminal-in-linux/

在圖形界面下查看你的筆記本電池狀態是很容易的,只需將鼠標指向任務欄中的電池圖標上,你便可以很容易地知道電池的電量。但如果我們想要從命令行中獲得這些信息呢?並不是所有人都知道如何做到這點。前幾天我的一個朋友詢問我如何從他的 Ubuntu 系統裡,在終端中查看他的筆記本電池的電量。這便是我寫這篇文章的起因。在本文中我概括了三種簡單的方法來讓你在任何 Linux 發行版本中從終端查看筆記本電池的狀態。

在終端下檢查筆記本電池狀態

我們可以使用下面的三種方法來從命令行中查找到筆記本電池狀態。

<code>方法一 – 使用 upower 命令/<code>

upower 命令預裝在大多數的 Linux 發行版本中。為了使用 upower 命令來展示電池的狀態,打開終端並運行如下命令:

$ upower -i /org/freedesktop/UPower/devices/battery_BAT0

示例輸出:

native-path: BAT0

vendor: Samsung SDI

model: DELL 7XFJJA2

serial: 4448

power supply: yes

updated: Sat 12 May 2018 06:48:48 PM IST (41 seconds ago)

has history: yes

has statistics: yes

battery

present: yes

rechargeable: yes

state: charging

warning-level: none

energy: 43.3011 Wh

energy-empty: 0 Wh

energy-full: 44.5443 Wh

energy-full-design: 48.84 Wh

energy-rate: 9.8679 W

voltage: 12.548 V

time to full: 7.6 minutes

percentage: 97%

capacity: 91.2045%

technology: lithium-ion

icon-name: 'battery-full-charging-symbolic'

History (charge):

1526131128 97.000 charging

History (rate):

1526131128 9.868 charging

正如你所看到的那樣,我的電池正處於充電狀態,並且它的電量百分比是 97%。

假如上面的命令因為某些未知原因不起作用,可以嘗試使用下面的命令:

$ upower -i `upower -e | grep 'BAT'`

示例輸出:

native-path: BAT0

vendor: Samsung SDI

model: DELL 7XFJJA2

serial: 4448

power supply: yes

updated: Sat 12 May 2018 06:50:49 PM IST (22 seconds ago)

has history: yes

has statistics: yes

battery

present: yes

rechargeable: yes

state: charging

warning-level: none

energy: 43.6119 Wh

energy-empty: 0 Wh

energy-full: 44.5443 Wh

energy-full-design: 48.84 Wh

energy-rate: 8.88 W

voltage: 12.552 V

time to full: 6.3 minutes

percentage: 97%

capacity: 91.2045%

technology: lithium-ion

icon-name: 'battery-full-charging-symbolic'

History (rate):

1526131249 8.880 charging

upower 不僅可以顯示出電池的狀態,它還可以顯示出已安裝電池的其他完整信息,例如電池型號,供應商名稱,電池的序列號,電池的狀態,電池的電壓等信息。

當然,如果你只想顯示電池的狀態,你可以可以結合使用 upower 命令和grep[1] 命令,具體命令如下:

$ upower -i $(upower -e | grep BAT) | grep --color=never -E "state|to\\ full|to\\ empty|percentage"

示例輸出:

state: fully-charged

percentage: 100%

如何在 Linux 終端下檢查筆記本電池狀態

從上面的輸出中可以看到我的筆記本電池已經完全充滿了。

想知曉更多的細節,可以參看 man 頁:

$ man upower

<code>方法二 – 使用 acpi 命令/<code>

acpi 命令可以用來顯示你的 Linux 發行版本中電池的狀態以及其他 ACPI 信息。

在某些 Linux 發行版本中,你可能需要安裝 acpi 命令。

要在 Debian、 Ubuntu 及其衍生版本中安裝它,可以使用如下命令:

$ sudo apt-get install acpi

在 RHEL、 CentOS、 Fedora 等系統中使用:

$ sudo yum install acpi

或者使用如下命令:

$ sudo dnf install acpi

在 Arch Linux 及其衍生版本中使用:

$ sudo pacman -S acpi

一旦 acpi 安裝好後,運行下面的命令:

$ acpi -V

注意: 在上面的命令中, V 是大寫字母。

示例輸出:

Battery 0: Charging, 99%, 00:02:09 until charged

Battery 0: design capacity 4400 mAh, last full capacity 4013 mAh = 91%

Battery 1: Discharging, 0%, rate information unavailable

Adapter 0: on-line

Thermal 0: ok, 77.5 degrees C

Thermal 0: trip point 0 switches to mode critical at temperature 84.0 degrees C

Cooling 0: Processor 0 of 3

Cooling 1: Processor 0 of 3

Cooling 2: LCD 0 of 15

Cooling 3: Processor 0 of 3

Cooling 4: Processor 0 of 3

Cooling 5: intel_powerclamp no state information available

Cooling 6: x86_pkg_temp no state information available

首先讓我們來檢查電池的電量,可以運行:

$ acpi

示例輸出:

Battery 0: Charging, 99%, 00:01:41 until charged

Battery 1: Discharging, 0%, rate information unavailable

下面,讓我們來查看電池的溫度:

$ acpi -t

示例輸出:

Thermal 0: ok, 63.5 degrees C

如果需要將溫度以華氏溫標顯示,可以使用:

$ acpi -t -f

示例輸出:

Thermal 0: ok, 144.5 degrees F

如果想看看交流電適配器是否連接上了沒有,可以運行:

$ acpi -a

示例輸出:

Adapter 0: on-line

假如交流電適配器沒有連接上,則你將看到如下的輸出:

Adapter 0: off-line

想獲取更多的信息,可以查看 man 頁:

$ man acpi

<code>方法三 - 使用 batstat 程序/<code>

batstat 是一個基於 ncurses 的命令行小工具,使用它可以在類 Unix 系統中展示筆記本電池狀態。它可以展示如下具體信息:

  • 當前電池電量

  • 當前電池所存能量

  • 充滿時所存能量

  • 從程序啟動開始經歷的時間,它不會追蹤記錄機器休眠的時間

  • 電池電量消耗歷史數據

安裝 batstat 輕而易舉。使用下面的命令來克隆該程序的最新版本:

$ git clone https://github.com/Juve45/batstat.git

上面的命令將拉取 batstat 的最新版本並將它的內容保存在一個名為 batstat 的文件夾中。

首先將目錄切換到 batstat/bin/ 中:

$ cd batstat/bin/

接著將 batstat 二進制文件複製到 PATH 環境變量中的某個目錄中,例如 /usr/local/bin/ 目錄:

$ sudo cp batstat /usr/local/bin/

使用下面的命令來讓它可被執行:

$ sudo chmod +x /usr/local/bin/batstat

最後,使用下面的命令來查看你的電池狀態。

$ batstat

示例輸出:

如何在 Linux 終端下檢查筆記本電池狀態

從上面的截圖中可以看到我的筆記本電池正處於充電狀態。

這個小工具還有某些小的限制。在書寫本文之時,batstat 僅支持顯示一個電池的相關信息。而且它只從 /sys/class/power_supply/ 目錄蒐集相關的信息。假如你的電池信息被存放在另外的目錄中,則這個小工具就不會起作用了。

想知曉更多信息,可以查看 batstat 的 GitHub 主頁[2]。

上面就是今天我要分享的所有內容。當然,可能還有很多其他的命令或者程序來從 Linux 終端檢查筆記本的電池狀態。據我所知,上面給出的命令都運行良好。假如你知道其他命令來查看電池的狀態,請在下面的評論框中讓我們知曉。假如你所給出的方法能夠起作用,我將對我的這篇文章進行更新。

最後,上面便是今天的全部內容了。更多的優質內容敬請期待,敬請關注!

歡呼吧!


via: https://www.ostechnix.com/how-to-check-laptop-battery-status-in-terminal-in-linux/

作者:SK[3] 選題:lujun9972 譯者:FSSlc 校對:wxy

本文由 LCTT 原創編譯,Linux中國 榮譽推出


分享到:


相關文章: