Lek*_*eyn 394
下面的命令输出大量关于电池的状态和统计信息。所述/org/...
路径可以用命令中找到upower -e
(--enumerate
)。
upower -i /org/freedesktop/UPower/devices/battery_BAT0
Run Code Online (Sandbox Code Playgroud)
示例输出:
native-path: /sys/devices/LNXSYSTM:00/device:00/PNP0C0A:00/power_supply/BAT0
vendor: NOTEBOOK
model: BAT
serial: 0001
power supply: yes
updated: Thu Feb 9 18:42:15 2012 (1 seconds ago)
has history: yes
has statistics: yes
battery
present: yes
rechargeable: yes
state: charging
energy: 22.3998 Wh
energy-empty: 0 Wh
energy-full: 52.6473 Wh
energy-full-design: 62.16 Wh
energy-rate: 31.6905 W
voltage: 12.191 V
time to full: 57.3 minutes
percentage: 42.5469%
capacity: 84.6964%
technology: lithium-ion
History (charge):
1328809335 42.547 charging
1328809305 42.020 charging
1328809275 41.472 charging
1328809245 41.008 charging
History (rate):
1328809335 31.691 charging
1328809305 32.323 charging
1328809275 33.133 charging
Run Code Online (Sandbox Code Playgroud)
您可以使用 grep 之类的工具从所有输出中获取您想要的信息。
一种简单的方法:将上述命令通过管道传输到
grep -E "state|to\ full|percentage"
Run Code Online (Sandbox Code Playgroud)
输出:
state: charging
time to full: 57.3 minutes
percentage: 42.5469%
Run Code Online (Sandbox Code Playgroud)
如果您经常想运行该命令,那么您可以为整个命令创建一个 Bash 别名。例子:
alias bat='upower -i /org/freedesktop/UPower/devices/battery_BAT0| grep -E "state|to\ full|percentage"'
Run Code Online (Sandbox Code Playgroud)
将其添加到 .bashrc 文件的末尾,您可以随时在终端中键入“bat”。
还有一个upower -d
( --dump
) 命令显示所有可用电源的信息,例如笔记本电脑电池、外接鼠标等。
Ter*_*ang 176
友情提醒:因为Linux内核2.6.24使用/proc
存储ACPI信息已经气馁和弃用。
现在我们鼓励使用 -> /sys/class/power_supply/BAT0
。
更新:Linux 3.19 及以后,我们应该查看以下目录 -> /sys/class/power_supply/BAT1/
例如,检查容量和运行状态
Linux 4.20
# uname -a
Linux netbook 4.20.1-arch1-1-ARCH #1 SMP PREEMPT Wed Jan 9 20:25:43 UTC 2019 x86_64 GNU/Linux
# cat /sys/class/power_supply/BAT1/capacity
99
# cat /sys/class/power_supply/BAT1/status
Charging
Run Code Online (Sandbox Code Playgroud)
和
Linux 5.9
# uname -a
Linux netbook 5.9.1-arch1-1 #1 SMP PREEMPT Sat, 17 Oct 2020 13:30:37 +0000 x86_64 GNU/Linux
# cat /sys/class/power_supply/BAT1/capacity
100
# cat /sys/class/power_supply/BAT1/status
Full
Run Code Online (Sandbox Code Playgroud)
Suh*_*aib 77
首先acpi
通过运行此命令安装,
sudo apt-get install acpi
Run Code Online (Sandbox Code Playgroud)
然后运行:
acpi
Run Code Online (Sandbox Code Playgroud)
示例输出:
Battery 0: Discharging, 61%, 01:10:12 remaining
Run Code Online (Sandbox Code Playgroud)
或者对于不断更新的更详细的输出:
watch --interval=5 acpi -V
Run Code Online (Sandbox Code Playgroud)
输出:
每 5.0 秒:acpi -V Wed Jan 8 15:45:35 2014 电池 0:充满,100% 适配器 0:在线 热 0:好的,44.0 摄氏度 热 0:跳变点 0 在温度 127.0 摄氏度时切换到临界模式 热 0:跳变点 1 在温度 127.0 摄氏度时切换到热模式 冷却 0:intel_powerclamp 没有可用的状态信息 冷却 1:pkg-temp-0 没有可用的状态信息 冷却 2:LCD 100 of 100 冷却 3:LCD 100 of 100 冷却 4:处理器 0,共 10 冷却 5:处理器 0,共 10 冷却 6:处理器 0,共 10 冷却 7:处理器 0,共 10 冷却 8:处理器 0,共 10 冷却 9:处理器 0,共 10 冷却 10:处理器 0,共 10 冷却 11:处理器 0,共 10
rub*_*o77 32
感谢@Wilf,这适用于我在 Lenovo Yoga 720 上的 Ubuntu 17.10:
upower -i $(upower -e | grep '/battery') | grep --color=never -E "state|to\ full|to\ empty|percentage"
Run Code Online (Sandbox Code Playgroud)
输出:
state: fully-charged
percentage: 100%
Run Code Online (Sandbox Code Playgroud)
或者只是这个一个班轮的数值
upower -i $(upower -e | grep '/battery') | grep --color=never -E percentage|xargs|cut -d' ' -f2|sed s/%//
Run Code Online (Sandbox Code Playgroud)
小智 21
这是一篇关于可以在命令行检查电池寿命的软件包的文章。
基本上,您所要做的就是:
sudo apt-get install acpi
acpi -V
Run Code Online (Sandbox Code Playgroud)
Mar*_*o L 17
也许你可以试试:
cat /proc/acpi/battery/BAT0/state
cat /proc/acpi/battery/BAT0/info
Ser*_*nyy 15
我参加聚会有点晚了,但这是我的一点贡献。根据之前的回答,我做了一个简单的脚本batpower:
#!/bin/bash
# Description: Battery charge in percentage
grep POWER_SUPPLY_CAPACITY /sys/class/power_supply/BAT1/uevent
Run Code Online (Sandbox Code Playgroud)
执行这个( ./batpower )的输出将是这样的:
POWER_SUPPLY_CAPACITY=23
Run Code Online (Sandbox Code Playgroud)
注意:电池编号对您来说可能不同,在我的情况下它是 BAT1,但您总是可以通过 cd'ing 到 /sys/class/power_supply 或 Lekensteyn 通过 upower -e 提到的那样找到它
我的机器:Ubuntu 13.10、3.11.0
如果您有旧版本的 Ubuntu,即 13.04 或更高版本,请将上述 bash 代码中的BAT1替换为BAT0。
改进的脚本:自从我的原始帖子以来,我对脚本做了一些小的改进:
#!/bin/bash
# Description: Battery charge in percentage
if [ -f /sys/class/power_supply/BAT1/uevent ]
then grep POWER_SUPPLY_CAPACITY /sys/class/power_supply/BAT1/uevent
else echo "Battery isn't present"
fi
Run Code Online (Sandbox Code Playgroud)
与往常一样,注意 bash 的空格。这都是不言自明的。如果有电池,它会显示出来,如果没有 - 脚本会告诉你。现在,转到您的 .bashrc 文件并将 $(batpower) 添加到您的提示中。这是我的提示:
PS1='[$(batpower)]\n${debian_chroot:+($debian_chroot)}[*\u@Ubuntu*]:\w\$ '
Run Code Online (Sandbox Code Playgroud)
更新您的终端或打开新的标签页或窗口,现在您可以在终端中持续监控电池电量!包括 tty !愿脚本得到称赞!
ænd*_*rük 10
您可以在不安装任何额外软件包的情况下执行此操作:
$ echo $((100*$(sed -n "s/remaining capacity: *\(.*\) m[AW]h/\1/p" /proc/acpi/battery/BAT0/state)/$(sed -n "s/last full capacity: *\(.*\) m[AW]h/\1/p" /proc/acpi/battery/BAT0/info)))%
94%
Run Code Online (Sandbox Code Playgroud)
这个命令是从byobu 的来源解除的。它可能是Bash alias 的一个很好的候选者。
Seb*_*bMa 10
您可以输入:
$ acpi -i
Battery 0: Discharging, 98%, 02:51:14 remaining
Battery 0: design capacity 4400 mAh, last full capacity 3733 mAh = 84%
Run Code Online (Sandbox Code Playgroud)
或者
$ upower -i $(upower -e | grep BAT)
native-path: BAT0
model: PA5109U-1BRS
serial: FA80
power supply: yes
updated: lun. 07 janv. 2019 03:54:18 CET (24 seconds ago)
has history: yes
has statistics: yes
battery
present: yes
rechargeable: yes
state: discharging
energy: 39,521 Wh
energy-empty: 0 Wh
energy-full: 40,328 Wh
energy-full-design: 47,52 Wh
energy-rate: 13,856 W
voltage: 10,8 V
time to empty: 2,9 hours
percentage: 98%
capacity: 84,8632%
technology: lithium-ion
History (charge):
1546829628 98,000 discharging
1546829593 99,000 discharging
History (rate):
1546829658 13,856 discharging
1546829628 14,752 discharging
1546829597 4,806 discharging
1546829594 2,678 discharging
Run Code Online (Sandbox Code Playgroud)
或使用发行版的 inxi 包(更多最新信息请参见此处的 inxi 官方源代码)
$ inxi -Bxxx
Battery: ID-1: BAT0 charge: 37.4 Wh condition: 37.4/47.5 Wh (79%) volts: 10.8/10.8 model: PA5109U-1BRS type: Li-ion
serial: FA80 status: Full
Run Code Online (Sandbox Code Playgroud)
在终端中运行以下命令以获取详细信息:
cat /proc/acpi/battery/BAT0/info
Run Code Online (Sandbox Code Playgroud)
如果你只是想让国家做:
cat /proc/acpi/battery/BAT0/state
Run Code Online (Sandbox Code Playgroud)
小智 8
这在 ubuntu 14.04 中为我完成了这项工作:
cat /sys/class/power_supply/BAT0/capacity
Run Code Online (Sandbox Code Playgroud)
小智 6
安装 acpi,然后用于watch
通过命令行持续监控。
例如
watch --interval=5 acpi -V
将显示如下信息,并且每 5 秒更新一次。
电池 0:已满,100%,费率信息不可用
电池 0:设计容量 6000 mAh,上次满容量 3424 mAh = 57%
问题是为什么有人会这样做?嗯,我有一台液晶屏坏了的笔记本电脑,我现在用它作为我的 bittorrent 盒子。