web-dev-qa-db-fra.com

Exclure plusieurs dossiers à l'aide de la synchronisation AWS S3

Comment exclure plusieurs dossiers lors de l'utilisation de la synchronisation aws s3?

J'ai essayé :

# aws s3 sync  s3://inksedge-app-file-storage-bucket-prod-env   s3://inksedge-app-file-storage-bucket-test-env --exclude 'reportTemplate/* orders/* customers/*'

Mais il fait toujours la synchronisation pour le dossier "client"

Sortie:

copy: s3://inksedge-app-file-storage-bucket-prod-env/customers/116/miniimages/IMG_4800.jpg to s3://inksedge-app-file-storage-bucket-test-env/customers/116/miniimages/IMG_4800.jpg
copy: s3://inksedge-app-file-storage-bucket-prod-env/customers/116/miniimages/DSC_0358.JPG to s3://inksedge-app-file-storage-bucket-test-env/customers/116/miniimages/DSC_0358.JPG
33
Ashish Karpe

Enfin, cela a fonctionné pour moi:

Sudo  aws s3 sync  s3://xxxx-app-file-storage-bucket-prod-env   s3://xxxx-app-file-storage-bucket-test-env --exclude 'customers/*'  --exclude 'orders/*'  --exclude 'reportTemplate/*'  

Astuce : en particulier, vous devez mettre vos caractères génériques et spéciaux entre guillemets simples ou doubles pour fonctionner correctement, ci-dessous sont des exemples de caractères correspondants. pour plus d'informations sur les commandes S3, vérifiez-le dans Amazon ici .

*: Matches everything
?: Matches any single character
[sequence]: Matches any character in sequence
[!sequence]: Matches any character not in sequence
53
Ashish Karpe

Pour ceux qui recherchent la synchronisation de certains sous-dossiers dans un compartiment, le filtre d'exclusion s'applique aux fichiers et dossiers à l'intérieur du dossier en cours de synchronisation, et non au chemin par rapport au compartiment, par exemple:

aws s3 sync s3://bucket1/bootstrap/ s3://bucket2/bootstrap --exclude '*' --include 'css/*'

synchroniserait le dossier bootstrap/css mais pas bootstrap/js ni bootstrap/fonts dans l'arborescence de dossiers suivante:

bootstrap/
├── css/
│   ├── bootstrap.css
│   ├── bootstrap.min.css
│   ├── bootstrap-theme.css
│   └── bootstrap-theme.min.css
├── js/
│   ├── bootstrap.js
│   └── bootstrap.min.js
└── fonts/
    ├── glyphicons-halflings-regular.eot
    ├── glyphicons-halflings-regular.svg
    ├── glyphicons-halflings-regular.ttf
    └── glyphicons-halflings-regular.woff

Autrement dit, le filtre est "css/*" et non "bootstrap/css/*"

Plus dans https://docs.aws.Amazon.com/cli/latest/reference/s3/index.html#use-of-exclude-and-include-filters

5
Raphael Fernandes