Skip to content

Commit 558af19

Browse files
committed
Add S3 object list commands s3-ls and s3-lsl
1 parent 7788357 commit 558af19

File tree

2 files changed

+47
-1
lines changed

2 files changed

+47
-1
lines changed

aliases

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -115,6 +115,8 @@ alias rds-db-clusters='~/.bash-my-aws/bin/bma rds-db-clusters'
115115
alias rds-db-instances='~/.bash-my-aws/bin/bma rds-db-instances'
116116
alias region-each='~/.bash-my-aws/bin/bma region-each'
117117
alias regions='~/.bash-my-aws/bin/bma regions'
118+
alias s3-ls='~/.bash-my-aws/bin/bma s3-ls'
119+
alias s3-lsl='~/.bash-my-aws/bin/bma s3-lsl'
118120
alias skim-stdin='~/.bash-my-aws/bin/bma skim-stdin'
119121
alias stack-arn='~/.bash-my-aws/bin/bma stack-arn'
120122
alias stack-asg-instances='~/.bash-my-aws/bin/bma stack-asg-instances'
@@ -168,4 +170,4 @@ function region() {
168170
else
169171
AWS_DEFAULT_REGION="$inputs";
170172
fi
171-
}
173+
}

lib/s3-functions

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -116,3 +116,47 @@ bucket-remove-force() {
116116
fi
117117
}
118118

119+
120+
s3-ls() {
121+
122+
# List of S3 Bucket Objects.
123+
#
124+
# $ s3-ls example-bucket
125+
# object-key
126+
# another-object-key
127+
#
128+
129+
local buckets=$(skim-stdin "$@")
130+
[[ -z "$buckets" ]] && __bma_usage "bucket [bucket]" && return 1
131+
132+
local bucket
133+
for bucket in $buckets; do
134+
aws s3api list-objects \
135+
--bucket "$bucket" \
136+
--output text \
137+
--query "Contents[].[Key]"
138+
done
139+
}
140+
141+
142+
s3-lsl() {
143+
144+
# Detail List of S3 Bucket Objects.
145+
#
146+
# $ s3-lsl another-example-bucket
147+
# object-key last-modified storage-class owner-display-name etag aize
148+
# another-object-key last-modified storage-class owner-display-name etag aize
149+
#
150+
151+
local buckets=$(skim-stdin "$@")
152+
[[ -z "$buckets" ]] && __bma_usage "bucket [bucket]" && return 1
153+
154+
local bucket
155+
for bucket in $buckets; do
156+
aws s3api list-objects \
157+
--bucket "$bucket" \
158+
--output text \
159+
--query "Contents[].[Key, LastModified, StorageClass, Owner.DisplayName, ETag, Size]"
160+
done
161+
}
162+

0 commit comments

Comments
 (0)