Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/aws/aws-cli
Universal Command Line Interface for Amazon Web Services
https://github.com/aws/aws-cli
aws aws-cli cloud cloud-management
Last synced: 6 days ago
JSON representation
Universal Command Line Interface for Amazon Web Services
- Host: GitHub
- URL: https://github.com/aws/aws-cli
- Owner: aws
- License: other
- Created: 2012-11-20T16:07:36.000Z (almost 12 years ago)
- Default Branch: develop
- Last Pushed: 2024-05-29T07:06:07.000Z (5 months ago)
- Last Synced: 2024-05-29T10:11:12.123Z (5 months ago)
- Topics: aws, aws-cli, cloud, cloud-management
- Language: Python
- Size: 159 MB
- Stars: 14,980
- Watchers: 572
- Forks: 3,977
- Open Issues: 551
-
Metadata Files:
- Readme: README.rst
- Changelog: CHANGELOG.rst
- Contributing: CONTRIBUTING.md
- License: LICENSE.txt
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
- awesomeLibrary - aws-cli - Universal Command Line Interface for Amazon Web Services (语言资源库 / python)
- awesome-python-applications - Repo - line interface for Amazon Web Services. `(console, py26)` (<a id="tag-dev" href="#tag-dev">Dev</a> / <a id="tag-dev.ops" href="#tag-dev.ops">Ops</a>)
- awesome - aws/aws-cli - Universal Command Line Interface for Amazon Web Services (Python)
- awesome-tools - awscli - AWS 命令行工具。 (Command Line / Dependency Management)
- best-of-python - GitHub - 11% open · ⏱️ 05.06.2024): (Infrastructure & DevOps)
- awesome-rainmana - aws/aws-cli - Universal Command Line Interface for Amazon Web Services (Python)
- awesome-starred - aws/aws-cli - Universal Command Line Interface for Amazon Web Services (aws)
- awesome-cloud-security - 地址 - cli) (0x02 工具 :hammer_and_wrench: / 1 云服务工具)
- awesome-python-applications - Repo - line interface for Amazon Web Services. `(console, py26)` (<a id="tag-dev" href="#tag-dev">Dev</a> / <a id="tag-dev.ops" href="#tag-dev.ops">Ops</a>)
- StarryDivineSky - aws/aws-cli
- jimsghstars - aws/aws-cli - Universal Command Line Interface for Amazon Web Services (Python)
README
aws-cli
=======.. image:: https://github.com/aws/aws-cli/actions/workflows/run-tests.yml/badge.svg
:target: https://github.com/aws/aws-cli/actions/workflows/run-tests.yml
:alt: Build StatusThis package provides a unified command line interface to Amazon Web
Services.Jump to:
- `Getting Started <#getting-started>`__
- `Getting Help <#getting-help>`__
- `More Resources <#more-resources>`__Getting Started
---------------This README is for the AWS CLI version 1. If you are looking for
information about the AWS CLI version 2, please visit the `v2
branch `__.Requirements
~~~~~~~~~~~~The aws-cli package works on Python versions:
- 3.8.x and greater
- 3.9.x and greater
- 3.10.x and greater
- 3.11.x and greater
- 3.12.x and greaterNotices
~~~~~~~On 2022-05-30, support for Python 3.6 was ended. This follows the
Python Software Foundation `end of support `__
for the runtime which occurred on 2021-12-23.On 2023-12-13, support for Python 3.7 was ended. This follows the
Python Software Foundation `end of support `__
for the runtime which occurred on 2023-06-27.
For more information, see this `blog post `__.*Attention!*
*We recommend that all customers regularly monitor the* `Amazon Web
Services Security Bulletins
website `__ *for
any important security bulletins related to aws-cli.*Maintenance and Support for CLI Major Versions
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~The AWS CLI version 1 was made generally available on 09/02/2013 and is currently in the full support phase of the availability life cycle.
For information about maintenance and support for SDK major versions and their underlying dependencies, see the `Maintenance Policy `__ section in the *AWS SDKs and Tools Shared Configuration and Credentials Reference Guide*.
Installation
~~~~~~~~~~~~Installation of the AWS CLI and its dependencies use a range of packaging
features provided by ``pip`` and ``setuptools``. To ensure smooth installation,
it's recommended to use:- ``pip``: 9.0.2 or greater
- ``setuptools``: 36.2.0 or greaterThe safest way to install the AWS CLI is to use
`pip `__ in a ``virtualenv``:::
$ python -m pip install awscli
or, if you are not installing in a ``virtualenv``, to install globally:
::
$ sudo python -m pip install awscli
or for your user:
::
$ python -m pip install --user awscli
If you have the aws-cli package installed and want to upgrade to the
latest version, you can run:::
$ python -m pip install --upgrade awscli
This will install the aws-cli package as well as all dependencies.
.. note::
On macOS, if you see an error regarding the version of ``six`` that
came with ``distutils`` in El Capitan, use the ``--ignore-installed``
option:::
$ sudo python -m pip install awscli --ignore-installed six
On Linux and Mac OS, the AWS CLI can be installed using a `bundled
installer `__.
The AWS CLI can also be installed on Windows via an `MSI
Installer `__.If you want to run the ``develop`` branch of the AWS CLI, see the
`Development Version `__ section of
the contributing guide.See the
`installation `__
section of the AWS CLI User Guide for more information.Configuration
~~~~~~~~~~~~~Before using the AWS CLI, you need to configure your AWS credentials.
You can do this in several ways:- Configuration command
- Environment variables
- Shared credentials file
- Config file
- IAM RoleThe quickest way to get started is to run the ``aws configure`` command:
::
$ aws configure
AWS Access Key ID: MYACCESSKEY
AWS Secret Access Key: MYSECRETKEY
Default region name [us-west-2]: us-west-2
Default output format [None]: jsonTo use environment variables, do the following:
::
$ export AWS_ACCESS_KEY_ID=
$ export AWS_SECRET_ACCESS_KEY=To use the shared credentials file, create an INI formatted file like
this:::
[default]
aws_access_key_id=MYACCESSKEY
aws_secret_access_key=MYSECRETKEY[testing]
aws_access_key_id=MYACCESSKEY
aws_secret_access_key=MYSECRETKEYand place it in ``~/.aws/credentials`` (or in
``%UserProfile%\.aws/credentials`` on Windows). If you wish to place the
shared credentials file in a different location than the one specified
above, you need to tell aws-cli where to find it. Do this by setting the
appropriate environment variable:::
$ export AWS_SHARED_CREDENTIALS_FILE=/path/to/shared_credentials_file
To use a config file, create an INI formatted file like this:
::
[default]
aws_access_key_id=
aws_secret_access_key=
# Optional, to define default region for this profile.
region=us-west-1[profile testing]
aws_access_key_id=
aws_secret_access_key=
region=us-west-2and place it in ``~/.aws/config`` (or in ``%UserProfile%\.aws\config``
on Windows). If you wish to place the config file in a different
location than the one specified above, you need to tell the AWS CLI
where to find it. Do this by setting the appropriate environment
variable:::
$ export AWS_CONFIG_FILE=/path/to/config_file
As you can see, you can have multiple ``profiles`` defined in both the
shared credentials file and the configuration file. You can then specify
which profile to use by using the ``--profile`` option. If no profile is
specified the ``default`` profile is used.In the config file, except for the default profile, you **must** prefix
each config section of a profile group with ``profile``. For example, if
you have a profile named "testing" the section header would be
``[profile testing]``.The final option for credentials is highly recommended if you are using
the AWS CLI on an EC2 instance. `IAM
Roles `__
are a great way to have credentials installed automatically on your
instance. If you are using IAM Roles, the AWS CLI will find and use them
automatically.In addition to credentials, a number of other variables can be
configured either with environment variables, configuration file
entries, or both. See the `AWS Tools and SDKs Shared Configuration and
Credentials Reference
Guide `__
for more information.For more information about configuration options, please refer to the
`AWS CLI Configuration Variables
topic `__.
You can access this topic from the AWS CLI as well by running
``aws help config-vars``.Basic Commands
~~~~~~~~~~~~~~An AWS CLI command has the following structure:
::
$ aws [options and parameters]
For example, to list S3 buckets, the command would be:
::
$ aws s3 ls
To view help documentation, use one of the following:
::
$ aws help
$ aws help
$ aws helpTo get the version of the AWS CLI:
::
$ aws --version
To turn on debugging output:
::
$ aws --debug
You can read more information on the `Using the AWS
CLI `__
chapter of the AWS CLI User Guide.Command Completion
~~~~~~~~~~~~~~~~~~The aws-cli package includes a command completion feature for Unix-like
systems. This feature is not automatically installed so you need to
configure it manually. To learn more, read the `AWS CLI Command
completion
topic `__.Getting Help
------------The best way to interact with our team is through GitHub. You can `open
an issue `__ and
choose from one of our templates for guidance, bug reports, or feature
requests.You may find help from the community on `Stack
Overflow `__ with the tag
`aws-cli `__ or on
the `AWS Discussion Forum for
CLI `__. If you
have a support plan with `AWS Support
`__, you can also create
a new support case.Please check for open similar
`issues `__ before opening
another one.The AWS CLI implements AWS service APIs. For general issues regarding
the services or their limitations, you may find the `Amazon Web Services
Discussion Forums `__ helpful.More Resources
--------------- `Changelog `__
- `AWS CLI
Documentation `__
- `AWS CLI User
Guide `__
- `AWS CLI Command
Reference `__
- `Amazon Web Services Discussion
Forums `__
- `AWS Support `__.. |Build Status| image:: https://travis-ci.org/aws/aws-cli.svg?branch=develop
:target: https://travis-ci.org/aws/aws-cli
.. |Gitter| image:: https://badges.gitter.im/aws/aws-cli.svg
:target: https://gitter.im/aws/aws-cli