O controle e o gerenciamento de dados podem ser uma tarefa árdua. Esses comandos do AWS S3 ajudarão você a gerenciar seus buckets e dados do AWS S3 de maneira rápida e eficiente.
AWS S3 é o serviço de armazenamento de objetos fornecido pela AWS. É o serviço de armazenamento mais usado da AWS que pode armazenar virtualmente uma quantidade infinita de dados. É altamente disponível, durável e fácil de integrar com vários outros serviços da AWS.
O AWS S3 pode ser usado por pessoas com quaisquer requisitos, como armazenamento de aplicativos móveis/web, armazenamento de big data, armazenamento de dados de aprendizado de máquina, hospedagem de sites estáticos e muito mais.
Se você estiver usando o S3 em seu projeto, saberá que, dada a grande capacidade de armazenamento, o gerenciamento de 100s de buckets e terabytes de dados nesses buckets pode ser uma tarefa exigente. Temos uma lista de comandos do AWS S3 com exemplos que você pode usar para gerenciar seus buckets e dados do AWS S3 com eficiência.
últimas postagens
Configuração da AWS CLI
Depois de fazer download e instalar a AWS CLI com êxito, você precisa configurar as credenciais da AWS para poder acessar sua conta e serviços da AWS. Vamos ver rapidamente como você pode configurar a AWS CLI.
A primeira etapa é criar um usuário com acesso programático à conta da AWS. Lembre-se de marcar essa caixa ao criar um usuário para a AWS CLI.
Dê as permissões e crie um usuário. Na tela final, depois de criar este usuário com sucesso, copie o ID da chave de acesso e a chave de acesso secreta para este usuário. Usaremos essas credenciais para fazer login por meio da AWS CLI.
Agora vá para o terminal de sua escolha e execute o seguinte comando.
aws configure
Insira o ID da chave de acesso e a chave de acesso secreta quando solicitado. Selecione qualquer região da AWS de sua escolha e o formato de saída do comando. Eu pessoalmente prefiro usar o formato JSON. Isso não é grande coisa, você sempre pode alterar esses valores mais tarde.
Agora você pode executar qualquer comando da AWS CLI no console. Vamos agora percorrer os comandos do AWS S3.
cp
O comando cp simplesmente copia os dados de e para os buckets do S3. Ele pode ser usado para copiar arquivos do local para o S3, do S3 para o local e entre dois buckets do S3. Existem muitos outros parâmetros que você pode fornecer com os comandos.
Por exemplo, parâmetro -dryrun para testar o comando, parâmetro –storage-class para especificar a classe de armazenamento de seus dados no S3, outros parâmetros para definir a criptografia e muito mais. o comando cp oferece controle total sobre como você configura sua segurança de dados no S3.
Uso
aws s3 cp <SOURCE> <DESTINATION> [--options]
Exemplos
Copiar dados do local para o S3
aws s3 cp file_name.txt s3://bucket_name/file_name_2.txt
Copie os dados do S3 para o local
aws s3 cp s3://bucket_name/file_name_2.txt file_name.txt
Copiar dados entre buckets do S3
aws s3 cp s3://bucket_name/file_name.txt s3://bucket_name_2/file_name_2.txt
Copiar dados de local para S3 – IA
aws s3 cp file_name.txt s3://bucket_name/file_name_2.txt --storage-class STANDARD_IA
Copie todos os dados de uma pasta local para o S3
aws s3 cp ./local_folder s3://bucket_name --recursive
ls
o comando ls é usado para listar os buckets ou o conteúdo dos buckets. Portanto, se você simplesmente deseja visualizar informações sobre seus buckets ou os dados nesses buckets, você pode usar o comando ls.
Uso:
aws s3 ls NONE or <BUCKET_NAME> [--options]
Exemplos
Listar todos os buckets da conta
aws s3 ls Output: 2022-02-02 18:20:14 BUCKET_NAME_1 2022-03-20 13:12:43 BUCKET_NAME_2 2022-03-29 10:52:33 BUCKET_NAME_3
Este comando lista todos os buckets em sua conta com a data de criação do bucket.
Listar todos os objetos de nível superior em um bucket
aws s3 ls BUCKET_NAME_1 or s3://BUCKET_NAME_1 Output: PRE samplePrefix/ 2021-12-09 12:23:20 8754 file_1.png 2021-12-09 12:23:21 1290 file_2.json 2021-12-09 12:23:21 3088 file_3.html
Este comando lista todos os objetos de nível superior em um bucket do S3. Observe aqui que os objetos com o prefixo samplePrefix/ não são mostrados aqui apenas os objetos de nível superior.
Listar todos os objetos em um bucket
aws s3 ls BUCKET_NAME_1 or s3://BUCKET_NAME_1 --recursive Output: 2021-12-09 12:23:20 8754 file_1.png 2021-12-09 12:23:21 1290 file_2.json 2021-12-09 12:23:21 3088 file_3.html 2021-12-09 12:23:20 16328 samplePrefix/file_1.txt 2021-12-09 12:23:20 29325 samplePrefix/sampleSubPrefix/file_1.css
Este comando lista todos os objetos em um bucket do S3. Observe aqui que os objetos com o prefixo samplePrefix/ e todos os subprefixos também são exibidos.
mb
o comando mb é usado simplesmente para criar novos buckets do S3. Este é um comando bastante simples, mas para criar novos buckets, o nome do novo bucket deve ser exclusivo em todos os buckets do S3.
Uso
aws s3 mb <BUCKET_NAME>
Exemplo
Crie um novo bucket em uma região específica
aws s3 mb myUniqueBucketName --region eu-west-1
mv
o comando mv simplesmente move os dados de e para os buckets do S3. Assim como o comando cp, o comando mv é usado para mover dados de local para S3, S3 para local ou entre dois buckets do S3.
A única diferença entre o comando mv e o cp é que ao usar o comando mv o arquivo é deletado da fonte. A AWS move este arquivo para o destino. Há muitas opções que você pode especificar com o comando.
Uso
aws s3 mv <SOURCE> <DESTINATION> [--options]
Exemplos
Mover dados de local para S3
aws s3 mv file_name.txt s3://bucket_name/file_name_2.txt
Mover dados do S3 para local
aws s3 mv s3://bucket_name/file_name_2.txt file_name.txt
Mover dados entre buckets do S3
aws s3 mv s3://bucket_name/file_name.txt s3://bucket_name_2/file_name_2.txt
Mover dados de local para S3 – IA
aws s3 mv file_name.txt s3://bucket_name/file_name_2.txt --storage-class STANDARD_IA
Mova todos os dados de um prefixo no S3 para uma pasta local.
aws s3 mv s3://bucket_name/somePrefix ./localFolder --recursive
prescrever
O comando presign gera um URL pré-assinado para uma chave no bucket do S3. Você pode usar esse comando para gerar URLs que podem ser usados por outras pessoas para acessar um arquivo na chave de bucket do S3 especificada.
Uso
aws s3 presign
Exemplo
Gere um URL pré-assinado válido por 1 hora para um objeto no bucket.
aws s3 presign s3://bucket_name/samplePrefix/file_name.png --expires-in 3600 Output: https://s3.ap-south-1.amazonaws.com/bucket_name/samplePrefix/file_name.png?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AKIA4MCZT73PAX7ZMVFW%2F20220314%2Fap-south-1%2Fs3%2Faws4_request&X-Amz-Date=20220314T054113Z&X-Amz-Expires=3600&X-Amz-SignedHeaders=host&X-Amz-Signature=f14608bbf3e1f9f8d215eb5b439b87e167b1055bcd7a45c13a33debd3db1be96
rb
O comando rb é usado simplesmente para excluir buckets do S3.
Uso
aws rb <BUCKET_NAME>
Exemplo
Exclua um bucket do S3.
aws s3 mb myBucketName # This command fails if there is any data in this bucket.
Exclua um bucket do S3 junto com os dados no bucket do S3.
aws s3 mb myBucketName --force
rm
O comando rm é usado simplesmente para excluir os objetos nos buckets do S3.
Uso
aws s3 rm <S3Uri_To_The_File>
Exemplos
Exclua um arquivo do bucket do S3.
aws s3 rm s3://bucket_name/sample_prefix/file_name_2.txt
Exclua todos os arquivos com um prefixo específico em um bucket do S3.
aws s3 rm s3://bucket_name/sample_prefix --recursive
Exclua todos os arquivos em um bucket do S3.
aws s3 rm s3://bucket_name --recursive
sincronizar
O comando sync copia e atualiza arquivos da origem para o destino, assim como o comando cp. É importante que entendamos a diferença entre o cp e o comando sync. Quando você usa cp, ele copia dados da origem para o destino, mesmo que os dados já existam no destino.
Ele também não excluirá arquivos do destino se eles forem excluídos da origem. No entanto, a sincronização analisa o destino antes de copiar seus dados e copia apenas os arquivos novos e atualizados. o comando de sincronização é semelhante a enviar e enviar alterações para uma ramificação remota no git. O comando de sincronização oferece muitas opções para personalizar o comando.
Uso
aws s3 sync <SOURCE> <DESTINATION> [--options]
Exemplos
Sincronize a pasta local com o S3
aws s3 sync ./local_folder s3://bucket_name
Sincronize dados do S3 com uma pasta local
aws s3 sync s3://bucket_name ./local_folder
Sincronize dados entre dois buckets do S3
aws s3 sync s3://bucket_name s3://bucket_name_2
Mover dados entre dois buckets do S3, excluindo todos os arquivos .txt
aws s3 sync s3://bucket_name s3://bucket_name_2 --exclude "*.txt
local na rede Internet
Você pode usar buckets do S3 para hospedar sites estáticos. O comando website é usado para configurar a hospedagem de site estático do S3 para seu bucket.
Você especifica o índice e os arquivos de erro e o S3 fornece uma URL onde você pode visualizar o arquivo.
Uso
aws s3 website <S3_URI> [--options]
Exemplo:
Configure a hospedagem estática para um bucket do S3 e especifique os arquivos de índice e erro
aws s3 website s3://bucket_name --index-document index.html --error-document error.html
Conclusão
Espero que o acima dê uma ideia sobre alguns dos comandos do AWS S3 usados com frequência para gerenciar buckets. Se você estiver interessado em saber mais, confira os detalhes da certificação da AWS.