// the find
aws/aws-cli
Universal Command Line Interface for Amazon Web Services
The AWS CLI v1 is the original command-line tool for interacting with AWS services, covering everything from S3 to IAM to Lambda via a unified `aws <service> <command>` interface. It's been the standard way to script AWS automation since 2013. Notably, it enters maintenance mode on July 15, 2026 — meaning no new features, only security patches.
Shell scripting integration is mature: `--query` with JMESPath expressions lets you pull specific fields out of responses without piping through jq. The `aws s3 sync` command handles multipart uploads, checksums, and incremental transfers transparently. Profile and credential chain support (env vars, ~/.aws/credentials, IAM role metadata endpoint) is well-thought-out and works correctly in EC2/ECS/Lambda without any extra code. The `--output` flag switching between JSON, text, and table is genuinely useful for quick terminal inspection.
This is v1, and it's going into maintenance mode in a month — new adopters should go straight to v2, which has faster startup (built binary vs Python bootstrap), native SSO support, and `--no-cli-pager` as default. The Python dependency means startup latency is noticeable in scripts that call `aws` in a loop. Tab completion requires manual shell configuration and isn't bundled by default. The `aws s3` high-level commands and `aws s3api` low-level commands exist in parallel with overlapping functionality and it's not always obvious which one to reach for.