s3 = Aws::S3::Client.new(
access_key_id: <>,
secret_access_key: <>,
region: <>,
)
Amazon S3 has a flat structure with no hierarchy like you would see in a file system. However, you can create a directory structure. https://docs.aws.amazon.com/AmazonS3/latest/user-guide/using-folders.html
s3.bucket(<bucket name>).object("directory1/text1.txt").put(body: "<text1.txt's content>")
# with Class: Aws::S3::Resource
File.open('filename', 'wb') do |file|
s3.bucket('bucket-name').object('object-key').get(response_target: file)
end
# with Class: Aws::S3::Client
File.open('filename', 'wb') do |file|
s3.get_object({ bucket:'bucket-name', key:'object-key'}, target: file)
end