Aide pour compléter mon premier script

Fermé
lilou - 29 juin 2011 à 16:45
zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 - 30 juin 2011 à 18:56
Bonjour,

Je suis débutante dans le domaine du script bash, j'ai commencé à créer mon premier script pour automatisé une tâche que je dois faire tous les jours au boulot, ce sont la vérif des sauvegardes sur le serveur principal, toutes les nuits vers 3h30 les sauvegardes remontent automatiquement sur le serveur central, cependant le matin en arrivant je dois m'assurer que toutes les sauvegardes soient à la date du jour et non vide, j'ai commencé à créer le script ce qu'il me faudrait c'est que si une sauvegarde n'est pas à la bonne date ou est vide qu'à la fin, on m'envoie par email si possible le détails des sauvegardes qui ne sont pas remontés, voici mon script ( j'espère avoir été claire )

#! /bin/bash

# Vérification sauvegarde mag
Date=$(date +'%D %H:%M')
 echo $Date
nb_rep=$(ls -ld /home/sauvegarde/mag* | wc -l)
nb_save=$(find /home/sauvegarde -mtime -1 -name '*.dif' -size +0 | wc -l) 

if [ $nb_rep -eq $nb_save ]
  then
  echo "les sauvegardes du jour sont ok"

else
 echo "erreur pour la sauvegarde du jour"
fi



A voir également:

2 réponses

zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 6 417
29 juin 2011 à 17:14
Salut,

Pourquoi, la solution précédente ne convenait plus ?
0
si c'était parfait et je vous en remercie, par contre je souhaite savoir si c'est possible que par exemple pour la journée du 29 juin 2011, la sauvegarde numéro 10 ne s'est pas bien déroulée du coup le script ne peut pas continuer ?
0
zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 6 417
29 juin 2011 à 18:11
Pour pouvoir te répondre il faudrait savoir ce que les variables suivantes sont sensées retourner, ou du moins que comptent-elles exactement :
nb_rep=$(ls -ld /home/sauvegarde/mag* | wc -l)
nb_save=$(find /home/sauvegarde -mtime -1 -name '*.dif' -size +0 | wc -l) 
0
Elles doivent compter que la sauvegarde du jour est bien à la bonne date et quelle ne soit pas vide. J'espère que c'est claire !
0
zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 6 417
30 juin 2011 à 13:17
Bon je suppose que "mag*" sont en fait que des répertoires et qu'il n'y a que ça dans le répertoire "/home/sauvegarde", exact ?

Je suppose aussi que "*.dif" sont des fichiers, et qu'il en existe un exemplaire unique par date de sauvegarde dans chaque répertoire "mag*", exact aussi ?

Si oui, alors ton script plus haut est ma foi bon ;-))
0
Oui, c'est tout à fait çà, mais admettons qu'un matin je vois qu'il y a une sauvegarde qui n'est pas à la bonne date du jour, le script va me dire "erreur pour la sauvegarde du jour" mais est-il possible qu'il soit plus précis en me disant quel mag par exemple le mag12 qui n'a pas la sauvegarde à la bonne date du jour ?
0
zipe31 Messages postés 36402 Date d'inscription dimanche 7 novembre 2010 Statut Contributeur Dernière intervention 27 janvier 2021 6 417
30 juin 2011 à 15:57
Ben forcément ce sera celle de la veille non ?

Puisque la commande "find" recherche uniquement les sauvegardes vieilles d'un jour... ;-\
0