{{tag>aws s3}}

{{backlinks>.}}

====== AWS консольный клиент ======

====== Установка ======

<code bash>$ curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
$ unzip awscliv2.zip
$ sudo ./aws/install
</code>

aws configure

  * AWS Access Key ID — идентификатор статического ключа, созданного при подготовке к работе.
  * AWS Secret Access Key — содержимое статического ключа.
  * Default region name — регион ru-central1.

~/.aws/credentials
<code>[default]
  aws_access_key_id = id
  aws_secret_access_key = secretKey
  region=ru-central1
</code>

<code bash>$ alias ycs3='aws s3 --endpoint-url=https://storage.yandexcloud.net'
$ aws s3 --endpoint-url=https://storage.yandexcloud.net ls
$ ycs3 ls
</code>

<code bash>
$ export PYTHONPATH=/Library/Python/2.7/site-packages; aws --endpoint-url=https://storage.yandexcloud.net s3 ls
</code>

====== Загрузить объекты ======

<code bash>
$ aws --endpoint-url=https://storage.yandexcloud.net \
  s3 cp --recursive local_files/ s3://bucket-name/path_style_prefix/
</code>

<code bash>
$ aws --endpoint-url=https://storage.yandexcloud.net \
  s3 cp --recursive --exclude "*" --include "*.log" \
  local_files/ s3://bucket-name/path_style_prefix/
</code>

<code bash>
$ screen aws --endpoint-url=https://storage.yandexcloud.net \
  s3 cp --recursive ci/ s3://pim-core-prod/ci/
</code>

====== Получить список объектов ======

<code bash>
$ aws --endpoint-url=https://storage.yandexcloud.net \
  s3 ls --recursive s3://bucket-name
</code>

====== Удалить объекты ======

<code bash>
$ aws --endpoint-url=https://storage.yandexcloud.net \
  s3 rm s3://bucket-name/path_style_prefix/ --recursive
</code>

====== Получить объект ======

<code bash>
$ aws --endpoint-url=https://storage.yandexcloud.net \
  s3 cp s3://bucket-name/textfile.txt textfile.txt
</code>

====== Examples ======

<code bash>
$ aws --endpoint-url=https://storage.yandexcloud.net s3 sync /mnt/files s3://s3corp-files/
$ aws s3 cp s3://src_bucket/file  s3://dst_bucket/file --source-region eu-west-1 --region ap-northeast-1
$ aws s3api get-bucket-location --bucket my_bucket
$ hdfs dfs -cp -f "s3://AccessKey:SecurityKey@ExternalBucket/SourceFoldername/*.*" "s3://AccessKey:SecurityKey@ExternalBucket/TargetFoldername"
$ aws s3 sync
$ aws cp --recursive s3://<source bucket> s3://<destination bucket>
$ aws s3 sync <source> <destination>
$ aws s3 sync <S3Uri> <LocalPath>
$ aws s3 sync <LocalPath> <S3Uri>
$ aws s3 sync <S3Uri> <S3Uri> 
$ s3cmd cp -r --acl-public s3://bucket1 s3://bucket2
</code>
