Bonjour Plugin #15 ? - BackWPup, le plugin de sauvegarde WordPress
Table des matières:
- Avant que tu commences
- Exclure un fichier spécifique
- Exclure un répertoire spécifique
- Exclure plusieurs fichiers ou répertoires
- Exclure plusieurs fichiers ou répertoires en fonction d'un modèle
- Conclusion
Rsync est un utilitaire de ligne de commande rapide et polyvalent qui synchronise les fichiers et les dossiers entre deux emplacements sur un shell distant.
Avec Rsync, vous pouvez mettre en miroir des données, créer des sauvegardes incrémentielles et copier des fichiers entre les systèmes. Lors de la copie de données, vous souhaiterez peut-être exclure un ou plusieurs fichiers ou répertoires en fonction de leur nom ou de leur emplacement.
Dans ce didacticiel, nous vous montrerons comment exclure des fichiers et des répertoires avec rsync.
Avant que tu commences
Vous devez avoir une connaissance de base du fonctionnement de rsync.
Dans les exemples ci-dessous, nous utiliserons rsync avec l'option
-a
,. Cela indique à rsync de synchroniser les répertoires de manière récursive, de transférer les périphériques spéciaux et de bloc et de conserver les liens symboliques, les heures de modification, le groupe, la propriété et les autorisations.
Lorsque vous excluez des fichiers ou des répertoires, vous devez utiliser leurs chemins d'accès relatifs au répertoire source.
Il existe deux options pour spécifier les fichiers et répertoires que vous souhaitez exclure:
- À partir d'une ligne de commande, à l'aide de l'
--exclude
--exclude.--exclude
partir d'un fichier, à l'aide de l'option--exclude-from
.
Exclure un fichier spécifique
Pour exclure un fichier spécifique, transmettez le chemin d'accès relatif au fichier à l'option
--exclude
.
Dans l'exemple suivant, le fichier
src_directory/file.txt
ne sera pas transféré:
rsync -a --exclude 'file.txt' src_directory/ dst_directory/
Exclure un répertoire spécifique
Exclure un répertoire spécifique
--exclude
à exclure un fichier, il suffit de transmettre le chemin d'accès relatif au répertoire à l'option
--exclude
comme indiqué ci-dessous:
rsync -a --exclude 'dir1' src_directory/ dst_directory/
rsync -a --exclude 'dir1/*' src_directory/ dst_directory/
Exclure plusieurs fichiers ou répertoires
Pour exclure plusieurs fichiers ou répertoires, spécifiez simplement plusieurs options
--exclude
:
rsync -a --exclude 'file1.txt' --exclude 'dir1/*' --exclude 'dir2' src_directory/ dst_directory/
rsync -a --exclude={'file1.txt', 'dir1/*', 'dir2'} src_directory/ dst_directory/
Si le nombre de fichiers et / ou de répertoires que vous souhaitez exclure est important, au lieu d'utiliser plusieurs options
--exclude
, vous pouvez spécifier les fichiers et répertoires que vous souhaitez exclure dans un fichier et transmettre le fichier à
--exclude-from
option.
La commande ci-dessous fait exactement la même chose que celle ci-dessus:
rsync -a --exclude-from='exclude-file.txt' src_directory/ dst_directory/
exclude-file.txt
Exclure plusieurs fichiers ou répertoires en fonction d'un modèle
Avec rsync, vous pouvez également exclure des fichiers et des répertoires en fonction d'un modèle qui correspond au nom du fichier ou du répertoire.
Par exemple, pour exclure tous les fichiers
.jpg
, vous devez exécuter:
rsync -a --exclude '*.jpg*' src_directory/ dst_directory/
Il est peu plus difficile d'exclure tous les autres fichiers et répertoires, à l'exception de ceux qui correspondent à un certain modèle. Supposons que vous souhaitiez exclure tous les autres fichiers et répertoires, à l'exception des fichiers se terminant par
.jpg
.
Une option consiste à utiliser la commande suivante:
rsync -a -m --include='*.jpg' --include='*/' --exclude='*' src_directory/ dst_directory/
Lorsque vous utilisez plusieurs options d'inclusion / exclusion, la première règle de correspondance s'applique.
-
--include='*.jpg'
- Tout d'abord, nous--include='*.jpg'
tous les fichiers.jpg
.--include='*/'
- Ensuite, noussrc_directory
tous les répertoires dans lesrc_directory
insrc_directory
. Sans cela, rsync ne copiera que les fichiers*.jpg
dans le répertoire de niveau supérieur.-m
- Supprime les répertoires vides.
Une autre option serait de diriger la sortie de la commande find vers rsync:
find src_directory/ -name "*.jpg" -printf %P\\0\\n | rsync -a --files-from=- src_directory/ dst_directory/
-
-printf %P\\0\\n
- supprimera lesrc_directory/
du chemin du fichier.--files-from=-
- signifie inclure uniquement les fichiers de l'entrée standard (fichiers transmis à partir de la commande find).
Conclusion
Dans ce didacticiel, vous avez appris à exclure des fichiers et des répertoires lors du transfert de données avec Rsync. Il y a beaucoup plus à apprendre sur Rsync sur la page du manuel de l'utilisateur de Rsync.
Comment copier des fichiers et des répertoires sous Linux
La copie de fichiers et de répertoires est l'une des tâches les plus courantes que vous effectuerez lorsque vous travaillerez sur la ligne de commande. Sous Linux, il existe plusieurs commandes pour copier des fichiers avec cp et rsync étant les outils les plus utilisés.
Comment supprimer des fichiers et des répertoires à l'aide de la ligne de commande Linux
Dans ce didacticiel, nous vous montrerons comment utiliser la commande rm pour supprimer des fichiers et des répertoires à travers des exemples et des explications des options rm les plus courantes.
Comment déplacer des fichiers et des répertoires sous Linux (commande mv)
Le déplacement de fichiers et de répertoires est l'une des tâches les plus élémentaires que vous devez souvent effectuer sur un système Linux. Dans ce didacticiel, nous expliquerons comment utiliser la commande mv pour déplacer des fichiers et des répertoires.