web-dev-qa-db-ja.com

端末でバッテリーの状態を確認するにはどうすればよいですか?

端末にバッテリーの状態を表示するコマンドが欲しいのですが。

317
Joe

以下のコマンドは、ロットステータスとバッテリーに関する統計情報を出力します。 /org/...パスは、コマンドupower -e--enumerate)で見つけることができます。

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

出力例:

  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

Grepなどのツールを使用して、すべての出力から必要な情報だけを取得できます。

1つの簡単な方法:上記のコマンドをパイプする

grep -E "state|to\ full|percentage"

出力:

state:               charging
time to full:        57.3 minutes
percentage:          42.5469%

そのコマンドを頻繁に実行したい場合は、コマンド全体のBashエイリアスを作成できます。例:

alias bat='upower -i /org/freedesktop/UPower/devices/battery_BAT0| grep -E "state|to\ full|percentage"'

これを.bashrcファイルの最後に追加すると、ターミナルでいつでも「bat」と入力できます。

ラップトップのバッテリー、外付けマウスなど、利用可能なすべての電源リソースの情報を表示するupower -d--dump)コマンドもあります。

334
Lekensteyn

わかりやすいリマインダー:Linuxカーネル以降2.6.24 ACPI情報を保存するために/procを使用discouragedおよび廃止予定)

-> /sys/class/power_supply/BAT0を使用することをお勧めします。

更新:Linux 3.19以降、次のディレクトリを確認する必要があります-> /sys/class/power_supply/BAT1/

たとえば、Linux 4.20を実行しているArch Linuxで容量とステータスを確認する->

# 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
123
Terry Wang

このコマンドを実行して最初にacpiをインストールし、

Sudo apt-get install acpi

次に実行します:

acpi

サンプル出力:

Battery 0: Discharging, 61%, 01:10:12 remaining

または、より詳細な出力を継続的に更新するには:

watch --interval=5 acpi -V

出力:

5.0秒ごと:acpi -V Wed Jan 8 15:45:35 2014 
 
 Battery 0:Full、100%
 Adapter 0:online 
 Thermal 0:OK、44.0度C 
温度0:トリップポイント0は温度127.0度Cでモードクリティカルに切り替わります
温度0:トリップポイント1は温度127.0度Cでホットモードに切り替わります
冷却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
65
Suhaib

@Wilfのおかげで、これはLenovo Yoga 720上のUbuntu 17.10で機能します。

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

出力:

state:               fully-charged
percentage:          100%

または、この1つのライナーを持つ数値のみ

upower -i $(upower -e | grep '/battery') | grep --color=never -E percentage|xargs|cut -d' ' -f2|sed s/%//
29
rubo77

コマンドを入力するだけで十分です

acpi

詳細情報を入力するには

acpi -V

以前にパッケージをインストールする必要はありませんでした。

システム:Debian 7.2 64ビット

28
user309404

ここ は、コマンドラインでバッテリーの寿命を確認できるパッケージに関する記事です。

基本的に、あなたがしなければならないことは次のとおりです。

Sudo apt-get install acpi
acpi -V
19
josh-fuggle

たぶんあなたは試すことができます:

cat /proc/acpi/battery/BAT0/state

cat /proc/acpi/battery/BAT0/info

18
Mariano L

私はパーティーに少し遅れていますが、ここに私の少しの貢献があります。前の回答に基づいて、単純なスクリプトbatpowerを作成しました。

#!/bin/bash
# Description: Battery  charge in percentage

grep POWER_SUPPLY_CAPACITY /sys/class/power_supply/BAT1/uevent

これを実行するための出力(./batpower)は次のようになります。

POWER_SUPPLY_CAPACITY=23

N.B. :バッテリーの番号は異なる場合があります。私の場合はBAT1ですが、/ sys/class/power_supplyにcdするか、Lekensteynがupower -eで言及したように、いつでも確認できます。

私のマシン:Ubuntu 13.10、3.11.0

古いバージョンのUbuntu、つまり13.04以降を使用している場合は、上記のbashコードのBAT1BATに置き換えます。

改善されたスクリプト:私の元の投稿以来、スクリプトを少し改善しました:

#!/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 

いつものように、bashでスペースに注意してください。これはすべて自明です。バッテリーが存在する場合は、バッテリーが表示されますが、存在しない場合は、スクリプトによって通知されます。次に、.bashrcファイルに移動して、プロンプトに$(batpower)を追加します。ここに私の約束があります:

PS1='[$(batpower)]\n${debian_chroot:+($debian_chroot)}[*\u@Ubuntu*]:\w\$ ' 

ターミナルを更新するか、新しいタブまたはウィンドウを開くと、ターミナルのバッテリー充電を常時監視できます! ttyを含む!スクリプトが賞賛されますように! enter image description here

14

追加のパッケージをインストールせずに実行できます。

$ 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%

このコマンドは byobuのソース から解除されています。 Bash alias の良い候補かもしれません。

10
ændrük

詳細情報を取得するには、ターミナルで次のコマンドを実行します。

cat /proc/acpi/battery/BAT0/info

状態だけが必要な場合:

cat /proc/acpi/battery/BAT0/state
9
MEM

Acpiをインストールし、watchを使用して、コマンドラインで継続的に監視します。

例えば。

watch --interval=5 acpi -V

以下のような情報が表示され、5秒ごとに更新されます。

バッテリー0:完全、100%、料金情報は利用不可
バッテリー0:設計容量6000 mAh、最後の最大容量3424 mAh = 57%

質問はなぜ誰かがこれを行うのですか?さて、壊れたLCDスクリーンを備えたラップトップを持っていますが、これを現在bittorrentボックスとして使用しています。

6
iceburn

これはubuntu 14.04で私のために仕事をしました:

cat /sys/class/power_supply/BAT0/capacity
5
the_saint

私はacpiを提案するつもりでしたが、それを読んだ後11.10では機能していませんでしたが、考えがありました。

端末に次のように入力してください:ls /proc/acpi/battery/BAT0またはBAT1

「ファイルまたはディレクトリが見つかりません」を取得した場合、これは機能しません。

しかし、ファイルがリストされている場合、ここにスクリプトがあります[/ usr/games /または$ PATHの他のディレクトリに貼り付け、Sudo chmod +x /usr/games/batterypercent、または名前を付けて実行します] 私があなたのために書いたばかりで、バッテリーの推定パーセンテージを示します[下記参照]:

(注、まだインストールされていない場合、リポジトリからプログラムcalcをインストールします:Sudo apt-get install apcalc

#!/bin/bash
math() { calc -d "$@"|tr -d ~; }
cd /proc/acpi/battery/BAT0;
max=$(grep 'design capacity:' info|awk '{print $3}')
current=$(grep 'remaining capacity:' state|awk '{print $3}')
percent=$(math "($current / $max) * 100");
echo $(echo $percent|cut -d. -f1)%

私はラップトップでこのスクリプトをテストしました。 acpiは93%のバッテリーを示し、スクリプトは90%のバッテリーを示すため、上記のestimateと言います。 、そしてそれがどれだけオフかを見てください。私の場合、acpiの割合よりも一貫して3%低いようです。その場合、次の行を最後の行の直前に追加できます:percent=$((percent + 3))、ここで「3」は低いパーセンテージです。

**私のレノボでは、バッテリーはBAT1としてリストされています。それも試してください。 (12.04 LTS)

4
Matt

Calcまたはapcalcを使用しない同様のスクリプト:

#! /bin/bash
cd /proc/acpi/battery/BAT0;
max=$(grep 'design capacity:' info|awk '{print $3}')
current=$(grep 'remaining capacity:' state|awk '{print $3}')
percent=$(expr $current"00" / $max )
echo -e "Current capacity: \t$current"
echo -e "Max capacity:  \t$max"
echo -e "Percent: \t\t$percent"
1
xerostomus

そのコマンドでパーセンテージだけをエコーできます

upower -i $(upower -e | grep 'BAT') | grep -E "state|to\ full|percentage" | awk '/perc/{print $2}'

65%

その値を抽出する必要がある場合

1
intika

これが私が使用するものです。満充電と現在の充電の差を見るだけでなく、充電が低下しているかどうかを確認します。その場合、ユーザーに通知するためにnotifyを使用します。

#!/bin/bash
#
# experimental battery discharge alerter
#
nsecs=3 # loop sleep time between readings
#
ful=$(cat /sys/class/power_supply/BAT0/energy_full)
#
oldval=0
while true
do
  cur=$(cat /sys/class/power_supply/BAT0/energy_now)
  dif="$((ful - cur))"
  slope="$((cur - oldval))"
  if [ "$slope" -lt 0 ]
  then
    echo "*** discharging!"
    notify-send -u critical -i "notification-message-IM" "discharging"
  fi
 oldval=$cur
 sleep $nsecs
done
1
Mark Simmons

次のいずれかを入力できます。

$ acpi -i
Battery 0: Discharging, 98%, 02:51:14 remaining
Battery 0: design capacity 4400 mAh, last full capacity 3733 mAh = 84%

または

$ 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
0
SebMa

これはすべての人を助けるわけではありませんが、私を助けてくれました。ターミナルを使用しているときは常に byob を使用します。バッテリーはステータス通知バーのオプションの1つです。

0
sheepeatingtaz