#1 Le 12/10/2013, à 18:16
- Autiwa
[Résolu] rsync et expression régulière
Bonjour,
J'ai actuellement un petit soucis avec rsync. Je me suis fait un petit script qui l'utilise pour faire des backups de divers dossiers. Les lignes ont la tête suivante :
rsync -av $1/.thunderbird/ $2/.thunderbird/
Seulement voilà, gimp a la bonne idée d'avoir un nom de dossier qui dépend de la version du logiciel. C'était gimp-2.6 avant, c'est gimp-2.8 depuis la mise à jour. Ma question est donc : Existe-t-il un moyen d'utiliser des expressions régulières avec rsync afin de prendre ça en compte?
Si ça peut fonctionner pour le premier argument, j'ai peine à croire que mon idée puisse fonctionner pour le deuxième qui lui dit où enregistrer :
rsync -av $1/.gimp*/ $2/.gimp*/
Si quelqu'un à des idées, je suis tout ouïe.
Dernière modification par Autiwa (Le 12/10/2013, à 19:30)
Pensez à éditer le titre du sujet (en éditant le premier message) pour rajouter un "[Résolu]" ça évite à ceux qui veulent donner un coup de main, d'ouvrir un sujet où il n'y a plus d'aide à donner.
Hors ligne
#2 Le 12/10/2013, à 18:50
- pingouinux
Re : [Résolu] rsync et expression régulière
Bonsoir,
Essaye ceci :
for i in "$1"/gimp*; do echo rsync -av "$i/" "$2"/"${i##*/}/"; done
Si c'est bon, tu enlèves le echo.
Hors ligne
#3 Le 12/10/2013, à 19:16
- Autiwa
Re : [Résolu] rsync et expression régulière
Merci pour ta réponse.
Je viens de faire un script minimal pour tester et ça ne fonctionne pas.
Voici le script :
#!/bin/bash
function backup_home()
{
for i in "$1"/gimp*; do echo rsync -av "$i/" "$2"/"${i##*/}/"; done
}
perso="/home/autiwa"
backup="/media/daily_backup"
source[0]=$perso
destination[0]="$backup/home_autiwa"
backup_home ${source[0]} ${destination[0]}
Voici le résultat :
autiwa@autiwa-desktop:~$ test.sh
rsync -av /home/autiwa/gimp*/ /media/daily_backup/home_autiwa/gimp*/
Je vais essayer de regarder ça, c'est peut-être une histoire de guillemets ou je sais pas trop quoi. Quand j'aurai trouvé la réponse, je la posterai afin de clore le sujet. C'est parti pour la bidouille ! :-)
Pensez à éditer le titre du sujet (en éditant le premier message) pour rajouter un "[Résolu]" ça évite à ceux qui veulent donner un coup de main, d'ouvrir un sujet où il n'y a plus d'aide à donner.
Hors ligne
#4 Le 12/10/2013, à 19:27
- pingouinux
Re : [Résolu] rsync et expression régulière
Ah oui, j'ai oublié le "." devant gimp :
for i in "$1"/.gimp*; do echo rsync -av "$i/" "$2"/"${i##*/}/"; done
Hors ligne
#5 Le 12/10/2013, à 19:30
- Autiwa
Re : [Résolu] rsync et expression régulière
Le pire c'est que j'avais corrigé dans une autre ligne, mais pas dans l'ECM. Merci pour ton aide, ça fonctionne parfaitement !
La solution donc :
for i in "$1"/.gimp*; do rsync -av "$i/" "$2"/"${i##*/}/"; done
Dernière modification par Autiwa (Le 11/11/2013, à 07:52)
Pensez à éditer le titre du sujet (en éditant le premier message) pour rajouter un "[Résolu]" ça évite à ceux qui veulent donner un coup de main, d'ouvrir un sujet où il n'y a plus d'aide à donner.
Hors ligne