script shell pour suppression anciennes sauvegardes

script shell pour suppression anciennes sauvegardes - Codes et scripts - Linux et OS Alternatifs

Marsh Posté le 19-05-2010 à 12:49:59    

Bonjour,  
 
Je suis debutant dans la programmation, et je dois creer un script shell pour pouvoir supprimer les anciennes sauvegardes SQL sur un serveur FTP, avec les conditions suivantes :
1) je dois garder que les sauvegardes qui date de 35 jours.
2)je dois garder la sauvegarde du dernier jour de chaque mois.
 
j'ai commence a faire un ptit truc mais je pense qu'il n'a pas d'avenir lol :
 
#!/usr/bin/ksh
HOST='XWXWXW.XXXXX.com'
USER='XXXXX'
PASSWD='XXXXX'
 
YGIBFILE=backups/databases/YGIB_$(date +%d_%m_%y) .sql
WARFILE=backups/databases/ROOT_$(date +%d_%m_%y) .war
 
 
cd /data
#suprimmer les sauvegardes >35 days
 
YGIBFILE - type f -mtime +35 | xrags -r rm
WARFILE - type f -mtime +35 | xrags -r rm
 
 
 
 
Merci d'avance pour votre aide.

Reply

Marsh Posté le 19-05-2010 à 12:49:59   

Reply

Marsh Posté le 19-05-2010 à 14:33:09    

find /path -ctime +35 -delete


---------------
uptime is for lousy system administrators what Viagra is for impotent people - mes unixeries - github me
Reply

Marsh Posté le 19-05-2010 à 16:34:52    

merci pour la reponse,  
j'ai revu mon scritps on ajoutant des ordres pour ne pas supprimer le dernier jour du mois, mais je ne sais pas comment formuler l'ordre de supprimer tout sauf le dernier jour pour chaque mois (j'ai mis le mot except mais il n'a aucune commande linux qui se nomme except ;-) )
find YGIBFILE -type f -ctime +35 | xrags -r rm  
 
execept YGIB_31_01_%y.sql
execept YGIB_28_02_%y.sql
execept YGIB_31_03_%y.sql
execept YGIB_30_04_%y.sql
execept YGIB_31_05_%y.sql
execept YGIB_30_06_%y.sql
execept YGIB_31_07_%y.sql
execept YGIB_31_08_%y.sql
execept YGIB_30_09_%y.sql
execept YGIB_31_10_%y.sql
execept YGIB_30_11_%y.sql
execept YGIB_31_12_%y.sql
 
find WARFILE -type f -ctime +35 | xrags -r rm
 
execept ROOT_31_01_%y.sql
execept ROOT_28_02_%y.sql
execept ROOT_31_03_%y.sql
execept ROOT_30_04_%y.sql
execept ROOT_31_05_%y.sql
execept ROOT_30_06_%y.sql
execept ROOT_31_07_%y.sql
execept ROOT_31_08_%y.sql
execept ROOT_30_09_%y.sql
execept ROOT_31_10_%y.sql
execept ROOT_30_11_%y.sql
execept ROOT_31_12_%y.sql
 

Reply

Marsh Posté le 20-05-2010 à 17:14:35    

alor personne ne peut m'aider??
 
je veux juste savoir comment on je peux fair pour mettre plusieurs fichier (pour moi le fichier correspond a YGIB_31_10_10.sql)dans la commade :
ls * | grep -v YGIB_31_01_10.sql | xargs rm -rf  
quand j'essaie  
ls * | grep -v YGIB_31_01_10.sql ; YGIB_28_02_10.sql | xargs rm -rf  
je recois un msg d'erreur qui dit YGIB_28_02_10.sql not found
 
aider moi svp

Reply

Marsh Posté le 20-05-2010 à 19:12:45    

dotchof> merci de faire attention à ton orthographe. Relis tes messages avant de cliquer sur "valider".

Reply

Marsh Posté le 20-05-2010 à 19:26:26    

copie ta sauvegarde à conserver dans un répertoire d'archive plutôt que de mettre en place une usine à gaz...


---------------
uptime is for lousy system administrators what Viagra is for impotent people - mes unixeries - github me
Reply

Marsh Posté le 20-05-2010 à 21:19:48    

vs pouvez vous les garder ces commentaires, moi je cherche juste une reponse a mon probleme.
si on m'a demandé de faire sa c'est qu'avant on a bien pensé a sauvegarder les copies.

Reply

Marsh Posté le 20-05-2010 à 21:22:00    

a oué tout cela juste pour un "je" qui a trainé? sacré forum.

Reply

Marsh Posté le 20-05-2010 à 21:26:18    

dotchof a écrit :

vs pouvez vous les garder ces commentaires, moi je cherche juste une reponse a mon probleme.
si on m'a demandé de faire sa c'est qu'avant on a bien pensé a sauvegarder les copies.


 
ben je te le dis, c'est une usine à gaz. Le calcul des dates en shell c'est quasiment du suicide... déjà qu'avec un langage de script c'est pas forcement la panacée. Et remballe ton ton agressif... moi je sais résoudre ce genre de problème :spamafote
 


---------------
uptime is for lousy system administrators what Viagra is for impotent people - mes unixeries - github me
Reply

Marsh Posté le 20-05-2010 à 21:27:49    

ba ecrit un livre alor;

Reply

Marsh Posté le 20-05-2010 à 21:27:49   

Reply

Marsh Posté le 20-05-2010 à 21:29:06    

1 point.

 

Edit : ça tombe bien, j'écris justement [:petrus75]


Message édité par black_lord le 20-05-2010 à 21:29:33

---------------
uptime is for lousy system administrators what Viagra is for impotent people - mes unixeries - github me
Reply

Marsh Posté le 20-05-2010 à 21:48:44    

[:alexsilvio]


---------------
Ce n'est point ma façon de penser qui a fait mon malheur, c'est celle des autres.
Reply

Marsh Posté le 21-05-2010 à 19:04:47    

Mon script de backup gère ça : http://www.sputnick-area.net/scripts/back-lftp.bash

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed