Skip to content

S3interact provides a command-line interface for interacting with Amazon S3, enabling users to manage buckets, folders, and files easily.

License

Notifications You must be signed in to change notification settings

0xnu/s3interact

S3Interact

Release Go Report Card Go Reference License

S3interact provides a command-line interface for interacting with Amazon S3, enabling users to manage buckets, folders, and files easily. Users can create and delete buckets, folders, and files and upload single or multiple files through simple prompts and inputs, making it a resourceful tool for anyone working with Amazon S3.

Now users can set and delete bucket policies and set ACLs. You can set predefined ACL to values like private, public-read, public-read-write, authenticated-read, aws-exec-read, bucket-owner-read, bucket-owner-full-control and log-delivery-write, as per the AWS S3 documentation.

Please carefully handle the policy JSON string when setting a bucket policy, as incorrect JSON or permissions can lead to unexpected behaviour or access issues.

Execute Locally

Run the command in your terminal to execute the code.

make execute

Build

Build single binary for local os.

make build

Build for multi os (linux 386, amd64).

make package

To Do

  • Recursive File/Folder Deletion
  • List Buckets and Objects
  • Downloading Files
  • Bucket and Object Information
  • Bucket Policies and Permissions
  • Bucket Deletion
  • Set a new Region
  • Moving and Renaming Files
  • Moving and Renaming Folders
  • Generate Pre-Signed URL for an Object

Contributing

Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.

Versioning

We use SemVer for versioning. For the versions available, see the tags on this repository.

License

This project is licensed under the BSD 3-Clause License.

Copyright

(c) 2023 Finbarrs Oketunji.