0

I have various sub-directories inside my s3 bucket which contain 2 files, namely:

  1. pavement_suitability_final_result.gpkg
  2. Intermediate_Part1_output.gpkg

I wish to delete only the files named as Intermediate_Part1_output.gpkg, leaving the pavement_suitability_final_result.gpkg intact.

I tried the below commands, with no success:

  1. aws s3 rm s3://aitl-data-bucket-backup/4_8_2_processed/ --recursive --exclude "pavement_suitability_final_result.gpkg" --include "Intermediate_Part1_output.gpkg" --dryrun This deletes both the files ignoring my exclude command.

  2. aws s3 rm s3://aitl-data-bucket-backup/4_8_2_processed/ --recursive --exclude "*" --include "Intermediate_Part1_output.gpkg" --dryrun This also deletes both the files ignoring my include command.

Tried various other combinations, but to no avail.

2
  • I suspect that it looks at the provided name as the full path of the object rather than just the 'filename' portion. Try something like: --exclude "*" --include "*/Intermediate_Part1_output.gpkg" to allow it to work in subdirectories too. Commented Mar 29 at 0:12
  • @JohnRotenstein Thank you very much, it worked! Earlier, I had tried using --include "/Intermediate_Part1_output.gpkg" but guess it needed the * too. If you could post your comment as an answer, I would be happy to mark it as accepted. Commented Mar 31 at 9:44

1 Answer 1

0

I suspect that it looks at the provided name as the full path of the object rather than just the 'filename' portion.

Try something like:

--exclude "*" --include "*/Intermediate_Part1_output.gpkg"

This will look for that filename in subdirectories too.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.