You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Bash脚本转换摄氏温度为华氏度功能异常求助

问题原因

你脚本中编写的华氏度转换语句F_WEATHER_TEMP=$(echo ($WEATHER_TEMP * 1.8) + 32)无法得到正确结果,核心原因是原生Bash不支持浮点算术运算,直接书写数学表达式会触发语法错误,无法正常计算。

修复方案

推荐直接使用你脚本中已经用到的awk工具完成浮点计算,和你现有的风速、风向计算逻辑写法保持一致,不需要额外安装其他依赖:

  1. 将原有的华氏度转换代码行替换为以下内容:
# 直接输出计算结果,保留原始小数位
F_WEATHER_TEMP=$(awk "BEGIN {print ($WEATHER_TEMP * 1.8) + 32}")

# 如果需要统一保留1位小数,可以改用printf格式化输出
# F_WEATHER_TEMP=$(awk "BEGIN {printf \"%.1f\", ($WEATHER_TEMP * 1.8) + 32}")
  1. 如果你需要在最终输出中展示华氏度,修改最后的echo语句即可:
echo "${WEATHER_ICON}  ${WEATHER_TEMP}°C / ${F_WEATHER_TEMP}°F:"

内容的提问来源于stack exchange,提问作者hankleonard

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 19:48:03