2016-10-25 1 views
0

Je voudrais télécharger tous les fichiers dans sans clé d'accès AWS (puisque cela fait partie d'un tutoriel que d'autres doivent suivre). Chacun des fichiers constitutifs (example) peut être téléchargé individuellement.Wget public s3 seau

+0

Vous avez 'aws cli' installé? C'est très simple si vous avez AWS CLI. – helloV

+0

@helloV Cela ne nécessite-t-il pas une clé API? – mntruell

+0

Qu'appelez-vous la clé API AWS? utiliser aws cli vous devez avoir une clé d'accès d'AWS? vous avez donc besoin d'un compte –

Répondre

1

Vous ne prenez pas une route facile:

  1. vous aurez besoin pour obtenir la clé (ie fichiers) dans le seau

vous pouvez utiliser rest API et faire une demande de suivre

curl -H "GET /?list-type=2 HTTP/1.1" \ 
    -H "Host: halitereplaybucket.s3.amazonaws.com" \ 
    -H "Date: 20161025T124500Z" \ 
    -H "Content-Type: text/plain" https://halitereplaybucket.s3.amazonaws.com/ 

Ceci retournera une réponse au format XML avec le contenu et toutes les clés du compartiment.

  1. Vous devrez analyser la réponse et extraire toutes les clés

  2. pour chacune des touches, vous pouvez faire une demande de télécharger le fichier

    wget 'http://halitereplaybucket.s3.amazonaws.com/{file}' 
    

Je comprends que vous précisons que vous ne souhaitez pas utiliser une clé AWS, mais en utilisant la CLI il sera aussi simple que

aws s3 sync s3://halitereplaybucket . 
+0

Juste pour clarifier l'OP ... Vous pouvez utiliser la commande 'aws s3 sync' avec * ANY * AWS Credentials car le bucket est publiquement lisible. C'est certainement le moyen le plus facile d'aller. Voir: [Interface de ligne de commande AWS (CLI)] (http://aws.amazon.com/cli/) –

+0

@JohnRotenstein mais les informations d'identification doivent être valides et l'OP n'en possède pas. – helloV