Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Add
--input-stream
option.refs #6 Thanks for @mattn.
description
--input-stream
option allows you to bind a file or stdin to the input struct.$ aws-sdk-client-go s3 put-object '{"Bucket": "my-bucket", "Key": "my.txt"}' --input-stream my.txt
s3#PutObjectInput has
Body
field ofio.Reader
.--input-stream
option binds the file to the field.When the input struct has only one field of
io.Reader
,aws-sdk-client-go
reads the file and binds it to the field automatically. (At now, all SDK input structs have only one field ofio.Reader
.)When the input struct has a "*Length" field for the size of the content,
aws-sdk-client-go
sets the size of the content to the field automatically. For example, s3#PutObjectInput hasContentLength
field.If
--input-stream
is "-",aws-sdk-client-go
reads from stdin. In this case,aws-sdk-client-go
reads all contents into memory, so it is not suitable for large files. Consider using a file for large content.