2015-02-08 12 views

Odpowiedz

16

Pierwsza opcja sm3cmd

użyciu s3cmd jest odpowiedź tutaj

s3cmd get s3://AWS_S3_Bucket/dir/file 

Spójrz into the docs tutaj

jeśli są to na Linuksa z linii poleceń.

sudo apt-get install s3cmd 

lub Centos, Fedore.

yum install s3cmd 

Przykład użycia.

s3cmd put my.file s3://pactsRamun/folderExample/fileExample 

Druga opcja

Korzystanie Cli from amazon

aktualizacji

Jak @ tedder42 powiedzieć, zamiast używać cp korzystanie sync takiego.

spojrzeć na składniach

$ aws s3 sync <source> <target> [--options] 

przykład.

$ aws s3 sync. S3: // my-wiadro/MyFolder

Przykład from docs at the Managing Objects part

+0

możesz dać mi poprawne polecenie @Ethaan –

+0

@PactsRamun to ci pomogło? – Ethaan

+0

s3cmd jest * bardzo * datowane w tym momencie. Aws-cli jest już od jakiegoś czasu. Sugerowałbym użycie 'sync' zamiast' cp'. – tedder42

1

Należy również pamiętać o AWS CLI synchronizacji z s3 jest wielowątkowy i przesyła kilka części pliku w jednym czasie. Jednak liczba wątków nie jest obecnie konfigurowalna.

0

Mamy do dyspozycji funkcję dryrun.

  • Na początek chciałbym przypisać EC2 instancji rolę, aby móc czytać zapisu do S3
  • SSH do instancji i wykonać następujące
  • vi tmp1.txt
  • AWS s3 mv./s3: //bucketname-bucketurl.com/ --dryrun
  • Jeśli to działa to wszystko co musisz zrobić, to albo utworzyć skrypt do przesłać wszystkie pliki z określonymi z tego folderu do S3 wiadra
  • mam zrobić Napisałem następujące polecenie w moim skrypcie, aby przenieść pliki starsze niż 2 minuty z bieżącego katalogu na folder/folder
  • cd dir; ls.-rt | xargs -I PLIKI znaleźć pliki -maxdepth 1 -name '* .txt' -mmin +2 -exec AWS S3 mv '{}' s3: //bucketurl.com