#!/usr/bin/env bash _check_date() { mkdir -p ~/.config/dotfiles/.data touch ~/.config/dotfiles/.data/weather_date local old_date=`cat ~/.config/dotfiles/.data/weather_date` local new_date=`date +%d/%m/%Y` if [ "$new_date" != "$old_date" ]; then return 1 else return 0 fi } weather_loop() { if [ $# -gt 0 ] then for ((i=1; i<=$#; i++)); do curl --retry 10 --connect-timeout 20 wttr.in/${!i} 2>/dev/null done if [ $? -eq 0 ]; then date +%d/%m/%Y > ~/.config/dotfiles/.data/weather_date else echo -e "\033[31;1mNetwork unavailable, please check your connexion or try again later.\033[0m" fi else curl --retry 10 --connect-timeout 20 wttr.in 2>/dev/null if [ $? -eq 0 ]; then echo -e "\033[31;1mNetwork unavailable, please check your connexion or try again later.\033[0m" fi fi } main() { if [ "$1" == "startup" ]; then _check_date if [ $? -ne 0 ]; then weather_loop ${@:2} fi else weather_loop $@ fi } main $@