フォルダ(プレフィックス)直下のオブジェクト検索したい場合、コンソールの検索欄では前方一致検索しかできません。部分一致検索は、Cloud Shellで以下のコマンドを実行することで実現できます。

aws s3 ls [フォルダのURI] | grep [検索ワード] | grep -v '/$' | awk '{print $4}'

コマンド解説

aws s3 ls [フォルダのURI]:直下のフォルダ(プレフィックス)、オブジェクトの情報を出力する

PRE test/
2025-01-30 11:10:37 0 test.txt
2025-01-30 11:10:37 0 test2.txt
  • オブジェクトの場合、更新時の年月日、更新時の時分秒、オブジェクトサイズ、オブジェクト名が表示されます
  • フォルダ(プレフィックス)の場合、3列目にプレフィックスであることを示すPREの文字、4列目にフォルダ名が表示されます

grep [検索ワード]:[検索ワード]を含むものを抽出する
grep -v '/$': 末尾が/のもの(フォルダ)を出力から除外する
awk '{print $4}':4列目(オブジェクト名)のみを出力する

使用例

ケース1

sampleバケットのtestフォルダで、オブジェクト名に20250131を含むオブジェクトを検索する
コマンド

aws s3 ls s3://sample/test/ | grep 20250131 | grep -v '/$' | awk '{print $4}'

出力

20250131_1.txt
20250131_2.txt
20250131_3.txt

ケース2

sampleバケットのtestフォルダで、オブジェクト名に.csvを含むオブジェクトを検索する
コマンド

aws s3 ls s3://sample/test/ | grep .csv | grep -v '/$' | awk '{print $4}'

出力

test_1.csv
test_2.csv
test_3.csv