2022-10-28 15:26:00 +03:00
#!/usr/bin/env bash
2022-06-06 23:13:59 +03:00
set -e
curl_cbr ( ) {
local today = $( date +%d/%m/%Y)
local prev_week = $( date +%d/%m/%Y -d '-7 day' )
local usd = R01235
curl --no-progress-meter " https://www.cbr.ru/scripts/XML_dynamic.asp?date_req1= $prev_week &date_req2= $today &VAL_NM_RQ= $usd " | \
sed -e "s/<[A-Z]/\n\0/g" | \
grep Value | \
sed -e "s#<\/\?\w\+>##g" | \
sed -e "s/,/./g"
}
curl_exchangerate ( ) {
local start_date = $( date +%Y-%m-%d -d '-1 day' )
local end_date = $( date +%Y-%m-%d)
curl --no-progress-meter -X GET " https://api.exchangerate.host/timeseries?start_date= $start_date &end_date= $end_date &base=USD&symbols=RUB&places=4&format=xml " | \
sed -e "s/<[a-z]/\n\0/g" | \
grep rate | \
sed -e "s#<\/\?\w\+>##g"
}
2022-08-28 17:20:22 +03:00
# bar_name=xmobar
bar_name = polybar
2022-06-18 13:18:11 +03:00
cc = ( $( curl_cbr) )
2022-06-06 23:13:59 +03:00
diff = $( echo ${ cc [-1] } ${ cc [-2] } | awk '{ print $1 - $2 }' )
arror = "↑"
2022-10-28 15:26:00 +03:00
color = '@success@'
2022-06-06 23:13:59 +03:00
if [ ${ diff : 0 : 1 } = = '-' ] ; then
diff = ${ diff : 1 }
arror = "↓"
2022-10-28 15:26:00 +03:00
color = '@error@'
2022-06-06 23:13:59 +03:00
fi
2022-08-28 17:20:22 +03:00
case $bar_name in
"xmobar" )
echo " ${ cc [-1] } (<fc= ${ color } > ${ arror } <hspace=3/> ${ diff } </fc>) "
; ;
"polybar" )
echo " ${ cc [-1] } (%{F ${ color } } ${ arror } %{O3} ${ diff } %{F-}) "
; ;
esac
2022-06-06 23:13:59 +03:00
exit 0