PostIt

Transcription

PostIt
Dec 18, 01 9:03
PostIt
Page 1/2
#!/bin/bash
############################ Sortie #############################
# Efface l’ecran, affiche les postits programmés et quitte
#
# La fonction s’execute si l’utilisateur choisit de quitter
# le programme par selection dans le menu ou en tapant CTRL−C (Signal 2)
function Sortie
{
clear
echo −e "Liste des PostIts programmés:\n"
at −l
echo −e "\nA la prochaine..."
sleep 1
exit 0
}
##################################################################
########################## Ajout #################################
# Demande la saisie à l’écran d’une date et heure puis d’une chaine
# de caractères. Programme l’affichage du message
function Ajout
{
#recuperation des arguments de la fonction
TTY=$1
JOBREP=$2
echo −e "\nNous sommes le ‘date‘\n\n"
#echo −e "Saisissez le jour du mois: "
#read JOUR
echo −n "Saisissez l’heure: "
read HEURE
echo −n "Saisissez les minutes: "
read MINUTE
echo −n "Tapez votre ligne de message: "
read MESG
#preparation du fichier à executer
echo −e "echo $MESG > $TTY \n" > $JOBREP/$HEURE$MINUTE
echo −e "rm −f $JOBREP/$HEURE$MINUTE" >> $JOBREP/$HEURE$MINUTE
#programmation du script
cd $JOBREP
RET=‘at $HEURE:$MINUTE −f$JOBREP/$HEURE$MINUTE 2> /dev/null‘
return 0
}
##################################################################
########################## Del #################################
# Demande la saisie d’un numéro de job "at"
# et supprime ce job ainsi que le fichier correspondant
function Del
{
List
echo −n "Saisissez le numéro du postit: "
read NUM
#verifie si le job existe
if [ ‘at −l|cut −f1|grep $NUM‘ ]
then
#On recupere la ligne contenant rm
SUP=‘at −c $NUM | grep "rm −f"‘
#On supprime le fichier
‘$SUP‘
#On supprime le job
atrm $NUM
return 0
else
echo −e "\nErreur, ce postIt n’existe pas!!!\n"
return 0
fi
}
###############################################################
########################## List #################################
# Affiche la liste des jobs programmé avec la commande "at"
function List
{
echo −e "\nListe des PostIts\n"
at −l
echo −e "\n"
return 0
}
################################################################
Tuesday December 18, 2001
1/2
PostIt
Dec 18, 01 9:03
Page 2/2
######################### Début ################################
#Définition des variables
JOBREP="$HOME/.postit"
#Repertoire contenant les scripts a executer
#TTY=‘tty‘
#TTY="/dev/console"
TTY="/dev/pts/0"
#l’affichage des postits se fait dans le terminal
#courant
#l’affichage se fait sur console en mode graphique
#l’affichage se fait sous KDE
#Verification de l’existence du répertoire ".postit"
if [ ! −d $JOBREP ]
then
# Creation du répertoire si celui−ci est inexistant
mkdir $JOBREP
fi
#Lance la fonction Sortie si l’utilisateur tape CTRL−C
trap Sortie 2
export PS3="Votre Choix ? "
echo ""
select CHOIX in \
"Ajouter un postit" \
"Supprimer un postit" \
"Lister les postits existants" \
"fin"
do
case $CHOIX in
"Ajouter un postit") Ajout $TTY $JOBREP;;
"Supprimer un postit") Del;;
"Lister les postits existants") List;;
’fin’) Sortie;;
*) echo −e "\aMauvais choix !!\a";;
esac
done
###############################################################
2/2
Tuesday December 18, 2001

Documents pareils