#1 Le 04/10/2013, à 16:56
- neoboss27
Variable pour récupérer le dernier fichier en date
Bonjour à tous,
J'aimerais, dans un script, executer une commande mysql pour restaurer la dernière sauvegarde du répertoire. En effet, il y a dans mon répertoire, plein de sauvegardes de différentes dates.
J'ai donc essayé de créer un .sh avec comme données :
lastsauvegarde=ls -1rt | tail -n 1
mysql -uroot -p base12 < /opt/sauvegardes/$lastsauvegarde
Mais ça ne fonctionne pas. Résultat de l'executable :
restaure.sh: 1: restaure.sh: -1rt: not found
Que dois-je mettre dans la variable ?
Merci de votre retour :-)
Hors ligne
#2 Le 04/10/2013, à 17:10
- jacobus77
Re : Variable pour récupérer le dernier fichier en date
lastsauvegarde=$(ls -1rt | tail -n 1)
Ca fait un momemtn que je n'ai pas fait de shell, mais il me semble que ce serait déjà mieus.
Hors ligne
#3 Le 04/10/2013, à 17:14
- neoboss27
Re : Variable pour récupérer le dernier fichier en date
Malheureusement ça ne fonctionne pas. Voila ce qu'il me retourne :
restaure.sh: 2: restaure.sh: cannot open /opt/sauvegardes/restaure.sh: No such file
Hors ligne
#4 Le 04/10/2013, à 17:39
- pingouinux
Re : Variable pour récupérer le dernier fichier en date
Bonjour,
C'est parce que tu récupères le dernier fichier modifié du répertoire courant (en l'occurrence, le script que tu viens de modifier).
Essaye :
lastsauvegarde=$(ls -rt /opt/sauvegardes | tail -n 1)
Ajouté :
Et mets des " ", au cas où le nom du fichier contiendrait des espaces :
... < /opt/sauvegardes/"$lastsauvegarde"
Dernière modification par pingouinux (Le 04/10/2013, à 17:41)
Hors ligne
#5 Le 04/10/2013, à 17:46
- neoboss27
Re : Variable pour récupérer le dernier fichier en date
Parfait !!
Merci beaucoup !!
Hors ligne