Skip to main content
Became Hot Network Question
added 58 characters in body
Source Link
K7AAY
  • 3.9k
  • 4
  • 27
  • 40

I want to sort directories fromin an s3 storage by the date embedded in their name.

So whenWhen I executerun

s3cmd ls s3://xyz/private/backups/mails/daily/ | awk '{print $2}' 

it lists methe directories like

s3://xyz/private/backups/mails/daily/01_Apr_2020/ s3://xyz/private/backups/mails/daily/02_Apr_2020/ s3://xyz/private/backups/mails/daily/03_Apr_2020/ s3://xyz/private/backups/mails/daily/04_Apr_2020/ s3://xyz/private/backups/mails/daily/05_Apr_2020/ s3://xyz/private/backups/mails/daily/06_Apr_2020/ s3://xyz/private/backups/mails/daily/07_Apr_2020/ s3://xyz/private/backups/mails/daily/08_Apr_2020/ s3://xyz/private/backups/mails/daily/09_Apr_2020/ s3://xyz/private/backups/mails/daily/10_Apr_2020/ s3://xyz/private/backups/mails/daily/11_Apr_2020/ s3://xyz/private/backups/mails/daily/12_Apr_2020/ s3://xyz/private/backups/mails/daily/13_Apr_2020/ s3://xyz/private/backups/mails/daily/14_Apr_2020/ s3://xyz/private/backups/mails/daily/15_Apr_2020/ s3://xyz/private/backups/mails/daily/30_Mar_2020/ s3://xyz/private/backups/mails/daily/31_Mar_2020/ 

I want these to display in date wise order so that it looks something like this

s3://xyz/private/backups/mails/daily/30_Mar_2020/ s3://xyz/private/backups/mails/daily/31_Mar_2020/ s3://xyz/private/backups/mails/daily/01_Apr_2020/ s3://xyz/private/backups/mails/daily/02_Apr_2020/ s3://xyz/private/backups/mails/daily/03_Apr_2020/ .... .... 

I tried sorting with column and -M-M (for month) flag, but it isn't working.

My main objectivegoal is to deletedeleting directories which are older than nn days, but since s3cmd lss3cmd ls doesn't return the creation/modified date of directories, I have to do it the hard way.

How may I make this work?

I want to sort directories from an s3 storage by date in their name.

So when I execute

s3cmd ls s3://xyz/private/backups/mails/daily/ | awk '{print $2}' 

it lists me directories like

s3://xyz/private/backups/mails/daily/01_Apr_2020/ s3://xyz/private/backups/mails/daily/02_Apr_2020/ s3://xyz/private/backups/mails/daily/03_Apr_2020/ s3://xyz/private/backups/mails/daily/04_Apr_2020/ s3://xyz/private/backups/mails/daily/05_Apr_2020/ s3://xyz/private/backups/mails/daily/06_Apr_2020/ s3://xyz/private/backups/mails/daily/07_Apr_2020/ s3://xyz/private/backups/mails/daily/08_Apr_2020/ s3://xyz/private/backups/mails/daily/09_Apr_2020/ s3://xyz/private/backups/mails/daily/10_Apr_2020/ s3://xyz/private/backups/mails/daily/11_Apr_2020/ s3://xyz/private/backups/mails/daily/12_Apr_2020/ s3://xyz/private/backups/mails/daily/13_Apr_2020/ s3://xyz/private/backups/mails/daily/14_Apr_2020/ s3://xyz/private/backups/mails/daily/15_Apr_2020/ s3://xyz/private/backups/mails/daily/30_Mar_2020/ s3://xyz/private/backups/mails/daily/31_Mar_2020/ 

I want these to display in date wise order so that it looks something like this

s3://xyz/private/backups/mails/daily/30_Mar_2020/ s3://xyz/private/backups/mails/daily/31_Mar_2020/ s3://xyz/private/backups/mails/daily/01_Apr_2020/ s3://xyz/private/backups/mails/daily/02_Apr_2020/ s3://xyz/private/backups/mails/daily/03_Apr_2020/ .... .... 

I tried sorting with column and -M (for month) flag, but it isn't working.

My main objective is to delete directories which are older than n days, but since s3cmd ls doesn't return creation/modified date of directories, I have to do it the hard way.

I want to sort directories in an s3 storage by the date embedded in their name.

When I run

s3cmd ls s3://xyz/private/backups/mails/daily/ | awk '{print $2}' 

it lists the directories like

s3://xyz/private/backups/mails/daily/01_Apr_2020/ s3://xyz/private/backups/mails/daily/02_Apr_2020/ s3://xyz/private/backups/mails/daily/03_Apr_2020/ s3://xyz/private/backups/mails/daily/04_Apr_2020/ s3://xyz/private/backups/mails/daily/05_Apr_2020/ s3://xyz/private/backups/mails/daily/06_Apr_2020/ s3://xyz/private/backups/mails/daily/07_Apr_2020/ s3://xyz/private/backups/mails/daily/08_Apr_2020/ s3://xyz/private/backups/mails/daily/09_Apr_2020/ s3://xyz/private/backups/mails/daily/10_Apr_2020/ s3://xyz/private/backups/mails/daily/11_Apr_2020/ s3://xyz/private/backups/mails/daily/12_Apr_2020/ s3://xyz/private/backups/mails/daily/13_Apr_2020/ s3://xyz/private/backups/mails/daily/14_Apr_2020/ s3://xyz/private/backups/mails/daily/15_Apr_2020/ s3://xyz/private/backups/mails/daily/30_Mar_2020/ s3://xyz/private/backups/mails/daily/31_Mar_2020/ 

I want these to display in date wise order so that it looks something like this

s3://xyz/private/backups/mails/daily/30_Mar_2020/ s3://xyz/private/backups/mails/daily/31_Mar_2020/ s3://xyz/private/backups/mails/daily/01_Apr_2020/ s3://xyz/private/backups/mails/daily/02_Apr_2020/ s3://xyz/private/backups/mails/daily/03_Apr_2020/ .... .... 

I tried sorting with column and -M (for month) flag, but it isn't working.

My goal is deleting directories older than n days, but since s3cmd ls doesn't return the creation/modified date of directories, I have to do it the hard way.

How may I make this work?

Informed about s3cmd in question
Link

How to sort s3cmd ls output by date?

minor formatting, corrections
Source Link
Freddy
  • 26.3k
  • 1
  • 27
  • 64

How do Ito sort anls output by date vaue in the output?

I want to sort directories from an s3 storage by date in their name.

So when I execute this command - s3cmd ls s3://xyz/private/backups/mails/daily/ | awk '{print $2}' it

s3cmd ls s3://xyz/private/backups/mails/daily/ | awk '{print $2}' 

it lists me directories like

s3://xyz/private/backups/mails/daily/01_Apr_2020/ s3://xyz/private/backups/mails/daily/02_Apr_2020/ s3://xyz/private/backups/mails/daily/03_Apr_2020/ s3://xyz/private/backups/mails/daily/04_Apr_2020/ s3://xyz/private/backups/mails/daily/05_Apr_2020/ s3://xyz/private/backups/mails/daily/06_Apr_2020/ s3://xyz/private/backups/mails/daily/07_Apr_2020/ s3://xyz/private/backups/mails/daily/08_Apr_2020/ s3://xyz/private/backups/mails/daily/09_Apr_2020/ s3://xyz/private/backups/mails/daily/10_Apr_2020/ s3://xyz/private/backups/mails/daily/11_Apr_2020/ s3://xyz/private/backups/mails/daily/12_Apr_2020/ s3://xyz/private/backups/mails/daily/13_Apr_2020/ s3://xyz/private/backups/mails/daily/14_Apr_2020/ s3://xyz/private/backups/mails/daily/15_Apr_2020/ s3://xyz/private/backups/mails/daily/30_Mar_2020/ s3://xyz/private/backups/mails/daily/31_Mar_2020/ 

I want these to display in date wise order so that it looks something like this

s3://xyz/private/backups/mails/daily/30_Mar_2020/ s3://xyz/private/backups/mails/daily/31_Mar_2020/ s3://xyz/private/backups/mails/daily/01_Apr_2020/ s3://xyz/private/backups/mails/daily/02_Apr_2020/ s3://xyz/private/backups/mails/daily/03_Apr_2020/ .... .... 

I tried sorting with column and -M-M (for month) flag, but it isn't working.

My main objective is to delete directories which are older than n days, but since s3cmd lss3cmd ls doesn't return creation/modified date of directories, I have to do it the hard way.

How do I sort an output by date vaue in the output

I want to sort directories from s3 storage by date in their name.

So when I execute this command - s3cmd ls s3://xyz/private/backups/mails/daily/ | awk '{print $2}' it lists me directories like

s3://xyz/private/backups/mails/daily/01_Apr_2020/ s3://xyz/private/backups/mails/daily/02_Apr_2020/ s3://xyz/private/backups/mails/daily/03_Apr_2020/ s3://xyz/private/backups/mails/daily/04_Apr_2020/ s3://xyz/private/backups/mails/daily/05_Apr_2020/ s3://xyz/private/backups/mails/daily/06_Apr_2020/ s3://xyz/private/backups/mails/daily/07_Apr_2020/ s3://xyz/private/backups/mails/daily/08_Apr_2020/ s3://xyz/private/backups/mails/daily/09_Apr_2020/ s3://xyz/private/backups/mails/daily/10_Apr_2020/ s3://xyz/private/backups/mails/daily/11_Apr_2020/ s3://xyz/private/backups/mails/daily/12_Apr_2020/ s3://xyz/private/backups/mails/daily/13_Apr_2020/ s3://xyz/private/backups/mails/daily/14_Apr_2020/ s3://xyz/private/backups/mails/daily/15_Apr_2020/ s3://xyz/private/backups/mails/daily/30_Mar_2020/ s3://xyz/private/backups/mails/daily/31_Mar_2020/ 

I want these to display in date wise order so that it looks something like this

s3://xyz/private/backups/mails/daily/30_Mar_2020/ s3://xyz/private/backups/mails/daily/31_Mar_2020/ s3://xyz/private/backups/mails/daily/01_Apr_2020/ s3://xyz/private/backups/mails/daily/02_Apr_2020/ s3://xyz/private/backups/mails/daily/03_Apr_2020/ .... .... 

I tried sorting with column and -M (for month) flag but isn't working.

My main objective is to delete directories which are older than n days, but since s3cmd ls doesn't return creation/modified date of directories I have to do it the hard way.

How to sort ls output by date?

I want to sort directories from an s3 storage by date in their name.

So when I execute

s3cmd ls s3://xyz/private/backups/mails/daily/ | awk '{print $2}' 

it lists me directories like

s3://xyz/private/backups/mails/daily/01_Apr_2020/ s3://xyz/private/backups/mails/daily/02_Apr_2020/ s3://xyz/private/backups/mails/daily/03_Apr_2020/ s3://xyz/private/backups/mails/daily/04_Apr_2020/ s3://xyz/private/backups/mails/daily/05_Apr_2020/ s3://xyz/private/backups/mails/daily/06_Apr_2020/ s3://xyz/private/backups/mails/daily/07_Apr_2020/ s3://xyz/private/backups/mails/daily/08_Apr_2020/ s3://xyz/private/backups/mails/daily/09_Apr_2020/ s3://xyz/private/backups/mails/daily/10_Apr_2020/ s3://xyz/private/backups/mails/daily/11_Apr_2020/ s3://xyz/private/backups/mails/daily/12_Apr_2020/ s3://xyz/private/backups/mails/daily/13_Apr_2020/ s3://xyz/private/backups/mails/daily/14_Apr_2020/ s3://xyz/private/backups/mails/daily/15_Apr_2020/ s3://xyz/private/backups/mails/daily/30_Mar_2020/ s3://xyz/private/backups/mails/daily/31_Mar_2020/ 

I want these to display in date wise order so that it looks something like this

s3://xyz/private/backups/mails/daily/30_Mar_2020/ s3://xyz/private/backups/mails/daily/31_Mar_2020/ s3://xyz/private/backups/mails/daily/01_Apr_2020/ s3://xyz/private/backups/mails/daily/02_Apr_2020/ s3://xyz/private/backups/mails/daily/03_Apr_2020/ .... .... 

I tried sorting with column and -M (for month) flag, but it isn't working.

My main objective is to delete directories which are older than n days, but since s3cmd ls doesn't return creation/modified date of directories, I have to do it the hard way.

Source Link
Loading