Script en fonction de la date
Voila mon problème:
J'aimerais qu'en fonction du jour, cela execute une commande differente.
un truc du genre:
if date | grep lun
then
commande que je veux faire
else
if date | grep mar
commande que je veux faire
Malheureusement, cela ne fonctionne pas, j'ai beau chercher je ne vois pas comment réaliser mon truc.
Si qq à la solution ça m'aiderait beaucoup :)
Merci.
J'aimerais qu'en fonction du jour, cela execute une commande differente.
un truc du genre:
if date | grep lun
then
commande que je veux faire
else
if date | grep mar
commande que je veux faire
Malheureusement, cela ne fonctionne pas, j'ai beau chercher je ne vois pas comment réaliser mon truc.
Si qq à la solution ça m'aiderait beaucoup :)
Merci.
5 réponses
-
En gros je voudrais que le truc fasse:
Si on est lundi fait ca
Si on est mardi fait ca
... -
Ca m'embeterais de faire 7 scripts différents et de les lancer avec crontab.
Je met mon script, si ca peut vous éclairer sur le truc que je veux faire.
if date | grep lun ; then
mount -t smbfs -o username=****,password=**** //repertoire_réseau/data /mnt/machine
tar czvf /mnt/hdb1/backup/lundi.tar.gz /mnt/DRH022/Suivi$/Fichier.mdb && unmount /mnt/machine
fi
else
if date | grep mar ; then
mount -t smbfs -o username=****,password=**** //repertoire_réseau/data /mnt/machine
tar czvf /mnt/hdb1/backup/mardi.tar.gz /mnt/DRH022/Suivi$/Fichier.mdb && unmount /mnt/machine -
la syntaxe exacte est:
if `test` then
`cmd1` else `cmd2` fi -
si tu as plus de 2 tests c bien d'utiliser un case
-
Salut,
Voici une solution (parmi tant d'autres).
#!/bin/sh
JOUR=` date +%A`
case $JOUR in
lundi)
echo "lundi "
;;
mardi)
echo "mardi "
;;
mercredi)
echo "mercredi "
mount -t smbfs -o username=****,password=**** //repertoire_rseau/data /mnt/machine
tar czvf /mnt/hdb1/backup/lundi.tar.gz /mnt/DRH022/Suivi$/Fichier.mdb && unmount /mnt/machine
;;
jeudi)
echo "jeudi "
;;
vendredi)
echo "vendredi "
;;
samedi)
echo "samedi "
;;
dimanche)
echo "dimanche "
;;
*)
echo "Pas un jour de la semaine"
;;
esac
A+
Daniel