mirror of
https://github.com/eddyem/small_tel.git
synced 2026-03-21 17:21:01 +03:00
add some bash scripts
This commit is contained in:
114
Auxiliary_utils/bash_scripts/allsky_sixel_weather.sh
Executable file
114
Auxiliary_utils/bash_scripts/allsky_sixel_weather.sh
Executable file
@@ -0,0 +1,114 @@
|
||||
#!/bin/bash
|
||||
|
||||
#
|
||||
# $1 - scaling factor (in percents) of the image
|
||||
#
|
||||
|
||||
function get_val {
|
||||
echo $(echo $1 | cut -d "=" -f 2 | cut -d "." -f 1)
|
||||
}
|
||||
|
||||
white_col="\e[97m"
|
||||
red_col="\e[1m\e[31m"
|
||||
end_col="\e[0m"
|
||||
last_row=0
|
||||
|
||||
scale=50
|
||||
if [ $# -gt 0 ]; then
|
||||
scale=$1
|
||||
fi
|
||||
|
||||
unset http_proxy
|
||||
|
||||
im_sleep=20 # in secs
|
||||
info_sleep=180 # in secs
|
||||
|
||||
n_info=$((info_sleep/im_sleep))
|
||||
|
||||
|
||||
|
||||
clear
|
||||
while [[ 1 ]]; do
|
||||
# weather info
|
||||
m_old=($(curl 192.168.70.33:12345 2>/dev/null)// / )
|
||||
rain=${m_old[0]}
|
||||
clouds=${m_old[1]}
|
||||
temp=${m_old[2]}
|
||||
|
||||
m_new=($(curl localhost:3333/stat3600 2>/dev/null | sed 's/[\x01-\x1F\x7F]//g')// / )
|
||||
windmax=${m_new[0]}
|
||||
m_new=($(curl localhost:3333 2>/dev/null | sed 's/[\x01-\x1F\x7F]//g')// / )
|
||||
wind=${m_new[0]}
|
||||
humi=${m_new[4]}
|
||||
|
||||
rain_col=$white_col
|
||||
clouds_col=$white_col
|
||||
humi_col=$white_col
|
||||
wind_col=$white_col
|
||||
wind_max_col=$white_col
|
||||
|
||||
let rain_flag=$(get_val $rain)
|
||||
if [[ $rain_flag -eq 1 ]]; then
|
||||
rain_col=$red_col
|
||||
fi
|
||||
|
||||
let clouds_val=$(get_val $clouds)
|
||||
if [[ $clouds_val -le 1500 ]]; then
|
||||
clouds_col=$red_col
|
||||
|
||||
fi
|
||||
|
||||
let humi_val=$(get_val $humi)
|
||||
if [[ $humi_val -ge 90 ]]; then
|
||||
humi_col=$red_col
|
||||
fi
|
||||
|
||||
let wind_val=$(get_val $wind)
|
||||
if [[ $wind_val -ge 10 ]]; then
|
||||
wind_col=$red_col
|
||||
fi
|
||||
|
||||
let wind_max_val=$(get_val $windmax)
|
||||
if [[ $wind_max_val -ge 10 ]]; then
|
||||
wind_max_col=$red_col
|
||||
fi
|
||||
|
||||
ncols=`tput cols`
|
||||
start_col=$((ncols-25))
|
||||
|
||||
tput cup $last_row $start_col
|
||||
# echo -e "\e[4m`date`:\e[0m"
|
||||
echo -e "\e[4m`date +'%F %T'`:\e[0m"
|
||||
|
||||
((++last_row))
|
||||
|
||||
tput cup $last_row $start_col
|
||||
echo -e "$clouds_col$clouds $rain_col($rain)$end_col"
|
||||
|
||||
((++last_row))
|
||||
|
||||
tput cup $last_row $start_col
|
||||
# echo -e "$temp $humi_col($humi)$end_col"
|
||||
temp_val=`printf "%.1f" ${temp#*=}`
|
||||
echo -e "Temp=$temp_val, ${humi_col}Hum=$humi_val%$end_col"
|
||||
|
||||
((++last_row))
|
||||
|
||||
tput cup $last_row $start_col
|
||||
# echo -e "$wind_col$wind $wind_max_col($windmax @hour)$end_col\n"
|
||||
wind_max_val=`printf "%.1f" ${windmax#*=}`
|
||||
echo -e "$wind_col$wind $wind_max_col(Max=$wind_max_val/hour)$end_col\n"
|
||||
|
||||
IFS='[;' read -p $'\e[6n' -d R -rs _ last_row col _
|
||||
|
||||
# allsky image
|
||||
|
||||
for i in `seq $n_info`; do
|
||||
tput cup 0 0
|
||||
curl -s http://zarch.sao.ru/webcam/omea_allsky.cgi | magick - -colors 256 -normalize +dither -resize $scale% sixel:-
|
||||
# curl -s http://zarch.sao.ru/webcam/mirat_allsky.cgi | magick - -colors 256 -resize $scale% sixel:-
|
||||
sleep ${im_sleep}s
|
||||
done
|
||||
|
||||
|
||||
done
|
||||
Reference in New Issue
Block a user