S3-compatible object-storage CLI for buckets, uploads, syncs, ACLs, policies, and lifecycle automation.
$brew install s3cmd
AI Analysis
s3cmd is a long-running community CLI for Amazon S3 and other S3-compatible object stores. It covers file transfer, bucket inspection, and bucket-level configuration from the shell.
What It Enables
- Create buckets, list objects, upload or fetch files, restore Glacier objects, and sync local trees to or from S3-compatible storage.
- Apply ACLs, versioning, ownership, public-access blocks, tags, policies, CORS, lifecycle rules, and notification configs without using a web console.
- Manage static website settings, signed URLs, multipart uploads, and basic CloudFront distribution or invalidation tasks from scripts.
Agent Fit
- Commands are non-interactive after credentials and endpoint settings are in place, with dry-run, retry, and partial-failure exit codes that work in scripted transfer loops.
- The weak point is output shape: most commands print plain text, and some reads return prettified XML, so follow-up parsing is more brittle than JSON-first CLIs.
- Best fit is backup, sync, and bucket-admin workflows where a skill can hide config details and wrap the text-oriented output.
Caveats
- Initial setup commonly goes through
--configure, which is interactive unless you manage~/.s3cfg, environment variables, or flags yourself. - This is a community project rather than an official AWS CLI, and some features reflect older S3 or CloudFront workflows.