我知道还有其他问题提出非常相似的问题,但似乎没有一个能回答我的问题。我正在为 nextcloud 实例运行 odroid hc2 sbc 和 armbian。两天前,它在稳定运行一年多后首次崩溃。为了排除过热的原因,我想编写一个脚本来监视温度,即运行内置函数“armbianmonitor”,它会创建以下连续输出:
Stop monitoring using [ctrl]-[c]
Time big.LITTLE load %cpu %sys %usr %nice %io %irq CPU C.St.
09:52:33: 600/ 600MHz 0.23 12% 1% 10% 0% 0% 0% 53.0°C 0/13
09:52:38: 1400/ 600MHz 0.21 2% 0% 1% 0% 0% 0% 53.0°C 0/13
09:52:43: 1400/ 600MHz 0.20 2% 0% 1% 0% 0% 0% 53.0°C 0/13^C
和:
sudo armbianmonitor -m | awk '$11 ~ "°C" {print $1; print $1;exit1}' ORS=' '
我得到这个结果:
09:57:48: 53.0°C 09:57:53: 51.0°C 09:57:58: 51.0°C 09:58:03: 51.0°C
但是......我只想每次运行脚本时只有一对(时间和温度)。换句话说,awk 和/或 (?) armbianmonitor 在返回第一对后应该停止。我还尝试将调用此命令的脚本的输出通过管道传输到文件,但该文件仍为空白,也许是因为 armbianmonitor 创建了连续输出?
答案1
我采取了略有不同的路径,现在执行以下操作:
每分钟执行一次:
#!/bin/bash
dttm=$(date +"%d.%m.%Y %H:%M;")
temp=$(echo $(cat /sys/devices/virtual/thermal/thermal_zone0/temp) /1000 | bc)
echo $dttm $temp
答案2
根据这个页,访问该文件:
/etc/armbianmonitor/datasources/soctemp
一秒观看示例:
watch -n 1 cat /etc/armbianmonitor/datasources/soctemp