
我根本不懂 shell 腳本,但我有這個
cat /sys/class/power_supply/BAT0/power_now
這給了我以毫瓦為單位的輸出,我想將其格式化為瓦並在手錶中使用
watch -t -n 5 cat /sys/class/power_supply/BAT0/power_now
答案1
您可以使用bc
(使用標誌進行浮點除法):
echo "$(cat /sys/class/power_supply/BAT0/power_now) / 1000" | bc -l
答案2
您始終可以求助於 awk 來解析文件並執行計算:
awk -F '=' '/POWER_SUPPLY_POWER_NOW/{print $2/1000}' /sys/class/power_supply/BAT0/power_now
這適用於用作列=
的分隔符號。典型的 awk 格式是{}
對與 中的模式相符的行執行操作//
。因此,對於具有 的行 POWER_SUPPLY_POWER_NOW
,取出第 2 列 ( $2
) 並除以 後列印它1000
。
至於這樣做watch
,可能有點難用由於報價。我建議將其運行為:
watch "awk -F '=' '/POWER_SUPPLY_POWER_NOW/{print $2/1000}' /sys/class/power_supply/BAT0/power_now"