AWS CLI ls return

0

Greetings,

I am using AWS cli in s3 to return the dates of files in buckets, the aim is to find old files to archive/delete.

The syntax that I am using is standard cli syntax. The files have been updated, but it returns the wrong date 2022-11-17?? Not 2023-02-01

aws s3 ls s3:bucket/Europe/ --recursive --human-readable --summarize --query "Contents[?contains(LastModified, '2022-11')].{Key: Key}" --output text | xargs -n1 -t -I 'KEY'

asked a year ago361 views
2 Answers
0

Hello,

Please try with the s3api as below to meet your requirements to list the keys based on last modified date

aws s3api list-objects-v2 --bucket bucket_name  --query "Contents[?contains(LastModified, '2023-02-22')].{Key: Key}" --output=text
AWS
answered a year ago
profile pictureAWS
EXPERT
kentrad
reviewed a year ago
0

Hi,

You can use the s3api list-objects command to achieve that:

aws s3api list-objects --bucket MY-BUCKET --query "Contents[?contains(LastModified, '2023-01')].{Key: Key}" --output text

Above allows you to filter the Lastmodified attribute.

Otherwise you can simply run:

aws s3 ls s3://MY-BUCKET --recursive --human-readable --summarize > s3_files.txt    

and see results in the file

profile picture
EXPERT
answered a year ago

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.

Guidelines for Answering Questions