Seems so simple, but not getting the syntax right. I want to know if a file exists in my s3 bucket using wildcards. Something like
aws s3 ls s3://my-bucket/folder/*myfile*
The goal is to see if a file called 2016_myfile.txt
or a file called 2011_myfile.csv
exists within this bucket.
If I run the command, it doesn't return anything even though I know this file exists there.
(re-drafted from comment as it appears this answered the question)
I myself tried, and failed to use wildcards in the aws-cli, and according to the docs, this is not currently supported. Simplest (though least efficient) solution would be to use grep:
Alternatively, you could write a short python/other script to do this more efficiently (but not in a single command)
S3 doesn't support wildcard listing. You need to list all the files and grep it.
Above command will give the list of files under your folder, it searches the files inside the folder as well. Just grep your file name
Suppose if you want to find multiple files, create a regular expression of those and grep it.
s3cmd also works for me with grep.