Come ordinare output di “ls” s3cmd
Domanda
Amazon "ls s3cmd" prende come questa uscita:
2010-02-20 21:01 1458414588 s3://file1.tgz.00<br>
2010-02-20 21:10 1458414527 s3://file1.tgz.01<br>
2010-02-20 22:01 1458414588 s3://file2.tgz.00<br>
2010-02-20 23:10 1458414527 s3://file2.tgz.01<br>
2010-02-20 23:20 1458414588 s3://file2.tgz.02<br>
<br>
Come selezionare tutti i file di archivio, termina a 00 ... XX, con l'ultima data del set di file?
Data e ora non è ordinato.
Bash, regexp?
Grazie!
Soluzione
DATE=$(s3cmd ls | sort -n | tail -n 1 | awk '{print $1}')
s3cmd ls | grep $DATE
ordinamento come numero schould messo date più giovani scorso. Coda -n1 prende l'ultima riga, awk tagli la prima parola che è la data. Utilizzare che per ottenere tutte le voci di tale data.
Ma forse non ho capito la domanda - quindi bisogna riformulare. È dirci 'data e l'ora non è ordinato' e fornire un esempio in cui essi sono ordinati - chiedere di più il termine ultimo, ma tutte le voci hanno la stessa data.
Altri suggerimenti
s3cmd ls s3://bucket/path/ | sort -k1,2
Questo sarà Ordina per data crescente.
Prova
Questa sintassi del comando è s3 ls S3: // percorso del secchio / file | sort
s3cmd ls s3://file1.tgz.00<br> | sort
Sarà ordinare in data discendente finalmente