Вы уже объединяете результаты.
wget .. | grep ..
выходные данные: 5.2\n
printf
выходные данные °C\n
Следовательно, объединенный результат равен 5.2\n°C\n
, именно то, что вы получаете.
То, что вы хотите сделать, это убрать перевод строки после 5.2
.Вы можете воспользоваться тем фактом, что $(command substitution)
убирает конечные переводы строки и передает его printf
:
printf '%s°C\n' "$(wget -q -O- "http://meteocentre.com/montreal/home_e.html" | grep -oP '(?<=Tn= ).*(?=°)')"