Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/bin/sh
- # API-key для OpenWeatherMap
- gw_key=''
- # Код города по-умолчанию
- gw_cid='1486910'
- # Создаём временный файл
- gw_basename="`basename $0`"
- gw_temp="`mktemp /tmp/${gw_basename}.XXXXXXX`"
- # Если в первом параметре не указан
- # код города, то используем по-умолчанию
- [ $1 ] && gw_cid="${1}"
- # Получаем файл в формате json
- fetch -qo ${gw_temp} "http://api.openweathermap.org/data/2.5/weather?id=${gw_cid}&lang=ru&units=metric&APPID=${gw_key}" \
- > /dev/null 2> /dev/null
- # Запрашиваем нужные параметры из файла
- #gw_param_name="`cat ${gw_temp} | jq -r .name`"
- gw_param_temp="`cat ${gw_temp} | jq -r .main.temp`"
- gw_param_main="`cat ${gw_temp} | jq -r ".weather[0] .description"`"
- gw_param_wind_speed="`cat ${gw_temp} | jq -r .wind.speed`"
- gw_param_wind_deg="`cat ${gw_temp} | jq -r .wind.deg`"
- gw_param_press="`cat ${gw_temp} | jq -r .main.pressure`"
- # Округляем направление ветра до целых
- gw_param_wind_deg="`echo ${gw_param_wind_deg}/1 | bc`"
- # Переводим из градусов в направление
- if [ "$gw_param_wind_deg" -ge "12" -a "$gw_param_wind_deg" -le "33" ] ; then
- gw_param_wind_deg="ССВ"
- elif [ "$gw_param_wind_deg" -ge "34" -a "$gw_param_wind_deg" -le "56" ] ; then
- gw_param_wind_deg="СВ"
- elif [ "$gw_param_wind_deg" -ge "57" -a "$gw_param_wind_deg" -le "78" ] ; then
- gw_param_wind_deg="ВСВ"
- elif [ "$gw_param_wind_deg" -ge "79" -a "$gw_param_wind_deg" -le "101" ] ; then
- gw_param_wind_deg="В"
- elif [ "$gw_param_wind_deg" -ge "102" -a "$gw_param_wind_deg" -le "123" ] ; then
- gw_param_wind_deg="ВЮВ"
- elif [ "$gw_param_wind_deg" -ge "124" -a "$gw_param_wind_deg" -le "146" ] ; then
- gw_param_wind_deg="ЮВ"
- elif [ "$gw_param_wind_deg" -ge "147" -a "$gw_param_wind_deg" -le "168" ] ; then
- gw_param_wind_deg="ЮЮВ"
- elif [ "$gw_param_wind_deg" -ge "169" -a "$gw_param_wind_deg" -le "191" ] ; then
- gw_param_wind_deg="Ю"
- elif [ "$gw_param_wind_deg" -ge "192" -a "$gw_param_wind_deg" -le "213" ] ; then
- gw_param_wind_deg="ЮЮЗ"
- elif [ "$gw_param_wind_deg" -ge "214" -a "$gw_param_wind_deg" -le "236" ] ; then
- gw_param_wind_deg="ЮЗ"
- elif [ "$gw_param_wind_deg" -ge "237" -a "$gw_param_wind_deg" -le "258" ] ; then
- gw_param_wind_deg="ЗЮЗ"
- elif [ "$gw_param_wind_deg" -ge "259" -a "$gw_param_wind_deg" -le "281" ] ; then
- gw_param_wind_deg="З"
- elif [ "$gw_param_wind_deg" -ge "282" -a "$gw_param_wind_deg" -le "303" ] ; then
- gw_param_wind_deg="ЗСЗ"
- elif [ "$gw_param_wind_deg" -ge "304" -a "$gw_param_wind_deg" -le "326" ] ; then
- gw_param_wind_deg="СЗ"
- elif [ "$gw_param_wind_deg" -ge "327" -a "$gw_param_wind_deg" -le "348" ] ; then
- gw_param_wind_deg="ССЗ"
- elif [ "$gw_param_wind_deg" -ge "349" -a "$gw_param_wind_deg" -le "360" ] ; then
- gw_param_wind_deg="С"
- elif [ "$gw_param_wind_deg" -ge "0" -a "$gw_param_wind_deg" -le "11" ] ; then
- gw_param_wind_deg="С"
- else
- gw_param_wind_deg="???"
- fi
- gw_param_press="`echo "${gw_param_press} * 0.750064 / 1" | bc`"
- echo "${gw_param_temp}°C ${gw_param_main} ↑${gw_param_wind_deg} ${gw_param_wind_speed}м/с ${gw_param_press}мм"
- # Удаляем временный файл
- rm ${gw_temp}
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement