[script-shell] Crontab
Résolu
zekiller3
Messages postés
7
Statut
Membre
-
zekiller3 Messages postés 7 Statut Membre -
zekiller3 Messages postés 7 Statut Membre -
#!/bin/bash
_date=$(date "+%Y-%m-%d_%H-%M")
_prefix_name="backup_home_"
nom_archive="$_prefix_name$_date"
_today=$(date "+%A")
_path="$HOME/Desktop/script/$_today"
if [ $(date "+%u") -eq 5 ]
# 5 : si on est vendredi
then
#rajouter la creation de dossier "$_today"
test -d $_path
if [ $? -ne 0 ]
then mkdir $_path
fi
#creation de l'archive du dimanche
tar -zcvvf $HOME/Desktop/script/"$_today"/$nom_archive.tgz $HOME/Desktop/script/dossier
#suppression des archives de la semaine
rm $HOME/Desktop/script/backup_home_*.tgz
#suppression des archives du dimanche anciennes de plus d'un mois
_nbfic=$(ls -t $_path | grep $_prefix_name | wc -l)
#je compte le nombre d'archives
echo "nombre de fichier : $_nbfic"
if [ $_nbfic -gt 4 ]
then #_nb_fichier_del : nombre de fichier a supprimer
_nb_fichier_del=$(expr $_nbfic - 4)
echo "nombre de fichier a supprimer : $_nb_fichier_del"
#_fichier_a_supp : liste des fichiers a supprimer
_fichier_a_supp=$(ls -t $_path | grep $_prefix_name | tail -$_nb_fichier_del)
for fic in $_fichier_a_supp
do
echo $fic >> $_path/log
rm $_path/$fic
done
fi
else tar -zcvvf $HOME/Desktop/script/$nom_archive.tgz $HOME/Desktop/script/dossier
fi
explication rapide :
je fais une sauvegarde de dossier tous les jours
si on est dimance (ici vendredi pour mes test)
on créé un dossier spécial et on y met les sauvegardes, seulement
on doit garder uniquement les 4 plus récentes sauvegardes du dimanche
toutes les autres sauvegardes effectuées pendant la semaine et dimanche (d'il y a plus de 4 semaines) doivent être supprimés
mon problème est que lors de l'édition de la crontab
j'ai mis
* * * * * sh ..../monbackup.sh
pour qu'il exécute toutes les minutes le script (pour mes tests)
mais apparement mon code avec du ls -t n'est pas exécuté!
il me faut donc un équivalent.. ou un moyen de récuperer les 4 fichiers les plus récents et supprimer le reste
A voir également:
- [script-shell] Crontab
- Classic shell - Télécharger - Personnalisation
- Script vidéo youtube - Guide
- Ghost script - Télécharger - Polices de caractères
- Mas script - Accueil - Windows
- Script cmd - Guide