как я могу получить «+ 45.0 ° C», если следующий результат был файлом (http://paste.linuxthefish.net/4@raw)?
Я могу получить его в одну строку, выполнив
sensors -A acpitz-virtual-0 > sen
grep temp1 ~/sen
, но на нем все еще есть бесполезная дерьмо:
"temp1: +42.0°C (crit = +90.0°C)"
Вы можете использовать egrep (или grep -e) для использования регулярных выражений. С .{7} 7 произвольными символами:
echo -e "temp1:\t+42.0°C (crit = +90.0°C)" | egrep -o "temp1:.{7}"
temp1: +42.
С помощью -o вы ограничиваете вывод своим соответствием. Чтобы отрезать только остальную часть строки:
echo -e "temp1:\t+42.0°C (crit = +90.0°C)" | egrep -o "temp1:.{7}" | egrep -o ".{5}$"