Solución:
(redactado de nuevo a partir del comentario, ya que parece que esto respondió a la pregunta)
Yo mismo lo intenté y no pude usar comodines en aws-cli, y de acuerdo con los documentos, esto no es compatible actualmente. La solución más simple (aunque menos eficiente) sería usar grep:
aws s3 ls s3://my-bucket/folder/ | grep myfile
Alternativamente, puede escribir una secuencia de comandos corta de Python / otra para hacer esto de manera más eficiente (pero no en un solo comando)
aws s3 ls
no admite globs, pero sincroniza lo hace y tiene un modo de funcionamiento en seco. Entonces, si hace esto (desde un directorio vacío) debería obtener los resultados que desea:
aws s3 sync s3://my-bucket . --exclude "*" --include "folder/*myfile*" --dryrun
Producirá líneas como esta para archivos coincidentes:
(dryrun) download s3://my-bucket/folder/myfile.txt to folder/myfile.txt
(dryrun) download s3://my-bucket/folder/_myfile-foo.xml to folder/_myfile-foo.xml
S3 no admite la lista de comodines. Necesita listar todos los archivos y grep.
aws s3 ls s3://mybucket/folder --recursive
El comando anterior le dará la lista de archivos debajo de su carpeta, también busca los archivos dentro de la carpeta. Solo grep tu nombre de archivo
aws s3 ls s3://mybucket/folder --recursive |grep filename
Suponga que si desea encontrar varios archivos, cree una expresión regular de esos y haga grep.