Pour avoir la météo en bash:
#!/bin/bash
#
# Meteo mise à jour toutes les heures
#
# Smokyr <smokyr@extra-ordinaire.com>
#
if [ -z "$1" ]
then
minute=5 #minute de maj par défaut
else
minute=$1
fi
while true
do
clear
LC_ALL='fr_FR.utf8' date
curl wttr.in/93200?lang=fr
sleep 1m
LC_ALL='fr_FR.utf8' date -d '1 minute ago'
tempo=$(date +%M | sed -e 's/000$//' -e 's/^0//')
attente=$(($minute - $tempo + 60))
sleep $attente.m
done
Afin de vérifier le statut de fail2ban et la table nfttables correspondante:
#!/bin/sh
#
# Dispaly status of fail2ban
# and status of each jails
# and the nft table fail2ban
#
# Smokyr <smokyr@extra-ordinaire.com>
#
fail2ban-client status
JAILS=`fail2ban-client status | grep "Jail list" | sed -E 's/^[^:]+:[ \t]+//' | sed 's/,//g'`
for JAIL in $JAILS
do
fail2ban-client status $JAIL
done
nft list table fail2ban
Une alarme (bip system) toute simple:
#!/bin/bash
#
# a simple alarm clock
#
# Smokyr <smokyr@extra-ordinaire.com>
#
# pas de paramètre
if [ $# = 0 ]
then
echo "Aucune valeur reçue pour alarme !"
echo
echo "Fournir une valeur sous la forme HH:MM"
echo "Par example 08:30"
echo
exit 2
fi
# aide
if [ $1 == '--help' -o $1 == '-h' ]
then
echo "Aide:"
echo "fournir l'heure de l'alarme sous la forme HH:MM"
echo "avec heure de 00 à 23"
echo "et minutes de 00 à 59"
echo
echo "par exemple ./alarme.sh 08:30"
echo
echo "vous pouvez aussi infiquer la raison de l'alarme:"
echo "(entre ' ' si plusieurs mots)"
echo
echo "./arlarme.sh 08:30 'Allez bosser'"
echo
exit 1
fi
# paramètre invalide
# longueur de la chaine = 5
if [ $(expr length $1) != 5 ]
then
echo "Paramètre incorrect ! L'haure n'est pas de 5 caractères."
echo "fournir l'heure de l'alarme sous la forme HH:MM"
echo "par exemple ./alarme.sh 08:30"
echo
echo "Tapez ./alarmes.sh --help (ou -h) pour l'aide."
echo
exit 2
fi
# test si les :
if [ echo ${1:2:1}) != ":" ]
echo "Paramètre incorrect ! Il manque les :"
echo "fournir l'heure de l'alarme sous la forme HH:MM"
echo "par exemple ./alarme.sh 08:30"
echo
echo "Tapez ./alarmes.sh --help (ou -h) pour l'aide."
echo
exit 2
# heure est un entier entre 0 et 23
if [ $(echo ${1:0:2}) -lt "0" ] || [ $(echo ${1:0:2}) -gt "23" ]
then
echo "Heure inavlide"
echo "doit etre comprise entre 00 et 23"
echo
echo "Tapez ./alarmes.sh --help (ou -h) pour l'aide."
echo
exit 2
fi
# minute est un entier entre 00 et 59
if [ $(echo ${1:3}) -lt "0" ] || [ $(echo ${1:3}) -gt "59" ]
then
echo "Minutes inavlides"
echo "doit etre comprise entre 00 et 59"
echo
echo "Tapez ./alarmes.sh --help (ou -h) pour l'aide."
echo
exit 2
fi
# c'est OK
alarme=$1
if test -n "$2"
then
raison=", "$2
else
raison=""
fi
courant=$(date +"%H:%M")
clear
echo 'il est '$courant' et alarme réglée pour '$alarme
while true
do
courant=$(date +"%H:%M")
if [ "$alarme" == "$courant" ]
then
echo -e '\a'
echo "Il est "$alarme$raison
echo "************"
echo "CTRL+C pour annuler"
else
clear
echo 'il est '$courant' et alarme réglée pour '$alarme
echo "CTRL+C pour annuler"
fi
sleep 1s
done
Pages: 1 2