Aws-cli: aws s3 ls - рд╕рдВрд╢реЛрдзрд┐рдд рддрд┐рдерд┐ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдлрд╝рд╛рдЗрд▓реЗрдВ рдЦреЛрдЬреЗрдВ?

рдХреЛ рдирд┐рд░реНрдорд┐рдд 21 рдЬрдире░ 2015  ┬╖  87рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: aws/aws-cli

рдирдорд╕реНрддреЗ,
рд╣рдо рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдЬреЛрдбрд╝реЗ рдЧрдП рдпрд╛ рдЕрдкрдбреЗрдЯ рдХрд┐рдП рдЧрдП рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рдХреЛ рдЦреЛрдЬрдиреЗ рдХреЗ рд▓рд┐рдП рдХрдИ рд╣рдЬрд╝рд╛рд░реЛрдВ (рд╕рдВрднрд╛рд╡рд┐рдд рд░реВрдк рд╕реЗ рд╕реИрдХрдбрд╝реЛрдВ рд╣рдЬрд╛рд░реЛрдВ рддрдХ рдмрдврд╝ рд░рд╣реЗ рд╣реИрдВ) рдСрдмреНрдЬреЗрдХреНрдЯреНрд╕ рдФрд░ рдлрд╝реЛрд▓реНрдбрд░реНрд╕/рдЙрдкрд╕рд░реНрдЧреЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рдмрд╛рд▓реНрдЯреА рдЦреЛрдЬрдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдкреВрд░реЗ рдмрдХреЗрдЯ рдкрд░ aws s3 ls рджрд┐рди рдореЗрдВ рдХрдИ рдмрд╛рд░ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдирд╛ рдФрд░ рдлрд┐рд░ рд╕реВрдЪреА рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЫрд╛рдВрдЯрдирд╛ рдЕрдХреНрд╖рдо рд▓рдЧрддрд╛ рд╣реИред рдХреНрдпрд╛ рд╕рдВрд╢реЛрдзрд┐рдд рд╕рдордп <,>, = рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк рдХреЗ рд╕рд╛рде рд╡рд╕реНрддреБрдУрдВ рдХреА рд╕реВрдЪреА рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рд╣реИ?

рд╕рд╛рде рд╣реА, рдХреНрдпрд╛ рд╣рдорд╕реЗ aws s3 ls рдЕрдиреБрд░реЛрдз рдХреЗ рд▓рд┐рдП рдПрдХ рдмрд╛рд░ рд╢реБрд▓реНрдХ рд▓рд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдпрд╛ рдЕрдиреБрд░реЛрдз рджреНрд╡рд╛рд░рд╛ рд▓реМрдЯрд╛рдП рдЧрдП рдкреНрд░рддреНрдпреЗрдХ рдСрдмреНрдЬреЗрдХреНрдЯ рдХреЗ рд▓рд┐рдП рдПрдХ рдмрд╛рд░ рд╢реБрд▓реНрдХ рд▓рд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ?

рдЬреАрдердм рдХреЗ рд▓рд┐рдП рдирдпрд╛, рдХрд╛рд╢ рдореИрдВ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдХреЛрдб рдХрд╛ рдпреЛрдЧрджрд╛рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рдЬрд╛рдирддрд╛ ... рдорджрдж рдХреА рд╕рд░рд╛рд╣рдирд╛ рдХрд░рддрд╛ рд╣реВрдВред

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

@jwieder рдпрд╣ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рд╕реВрдЪреА рдХреЙрд▓ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЛ s3 рддрдХ рдХрдо рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдорд╛рди рд▓реЗрдВ рдХрд┐ рдЖрдк рдкреНрд░рддрд┐рджрд┐рди рдПрдХ рдмрд╛рд▓реНрдЯреА рдореЗрдВ ~1000 рд╕рдорд╛рдЪрд╛рд░ рд▓реЗрдЦ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддреЗ рд╣реИрдВред рдлрд┐рд░ рдЧреНрд░рд╛рд╣рдХ рдкрдХреНрд╖ рдкрд░ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдкрд┐рдЫрд▓реЗ 3 рджрд┐рдиреЛрдВ рдХреЗ рд▓реЗрдЦ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ (рдФрд░ рдХреЗрд╡рд▓ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЕрдиреБрд░реЛрдз рдХрд┐рдП рдЬрд╛рдиреЗ рдкрд░)ред рд╕рдордп рдХреА рд╢реБрд░реБрдЖрдд рдХреЗ рдмрд╛рдж рд╕реЗ рд╕рднреА рд▓реЗрдЦреЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП, 100k рдХрд╣рддреЗ рд╣реИрдВ, рд╕рдордп рд▓рдЧрддрд╛ рд╣реИ рдФрд░ рдиреЗрдЯрд╡рд░реНрдХ рд▓рд╛рдЧрдд рдЕрд░реНрдЬрд┐рдд рдХрд░рддрд╛ рд╣реИ (рдХреНрдпреЛрдВрдХрд┐ рдПрдХ рд╕реВрдЪреА рдХреЙрд▓ рдХреЗрд╡рд▓ 1000 рдЖрдЗрдЯрдо рддрдХ рд╡рд╛рдкрд╕ рдЖ рдЬрд╛рдПрдЧреА)ред рдпрд╣ рдХрд╣рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ "рдореБрдЭреЗ 3 рджрд┐рди рдкрд╣рд▓реЗ рд╕реЗ рдмрдирд╛рдИ рдЧрдИ/рд╕рдВрд╢реЛрдзрд┐рдд рд╡рд╕реНрддреБрдУрдВ рдХреА рдПрдХ рд╕реВрдЪреА рджреЗрдВ"ред

рд╕рднреА 87 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

S3 API рдЗрд╕рдХрд╛ рд╕рдорд░реНрдерди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП S3 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдРрд╕рд╛ рдХрд░рдиреЗ рдХрд╛ рдПрдХрдорд╛рддреНрд░ рддрд░реАрдХрд╛ рдХреНрд▓рд╛рдЗрдВрдЯ рд╕рд╛рдЗрдб рд╕реЙрд░реНрдЯрд┐рдВрдЧ рдХрд░рдирд╛ рд╣реИред

рдЬрд╣рд╛рдБ рддрдХ S3 рдореВрд▓реНрдп рдирд┐рд░реНрдзрд╛рд░рдг рдХреА рдмрд╛рдд рд╣реИ , рд╣рдо рдПрдХ ListObjects рдЕрдиреБрд░реЛрдз рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ рдПрдХ рдмрд╛рд░ рдореЗрдВ 1000 рдСрдмреНрдЬреЗрдХреНрдЯ рд▓реМрдЯрд╛рддрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП aws s3 ls рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рдЖрдкрд╕реЗ рдкреНрд░рддрд┐ 1000 рд╡рд╕реНрддреБрдУрдВ рдкрд░ рдПрдХ рд╕реВрдЪреА рдЕрдиреБрд░реЛрдз рдХреЗ рд▓рд┐рдП рд╢реБрд▓реНрдХ рд▓рд┐рдпрд╛ рдЬрд╛рдПрдЧрд╛ред

рдПрдХ рдЕрдиреНрдп рд╡рд┐рдХрд▓реНрдк рдПрд╕ 3 рдХреЗ рдмрд╛рд╣рд░ рдПрдХ рд╕рд╣рд╛рдпрдХ рд╕реВрдЪрдХрд╛рдВрдХ рдХреЛ рд╕реНрдЯреЛрд░ рдХрд░рдирд╛ рд╣реИ, рдЬреИрд╕реЗ рдбрд╛рдпрдиреЗрдореЛрдбрдмред рдЕрдЧрд░ рдЖрдкрдХреЗ рдкрд╛рд╕ рдХреЛрдИ рдЕрдиреНрдп рд╕рд╡рд╛рд▓ рд╣реИ рддреЛ рдореБрдЭреЗ рдмрддрд╛рдПрдВред

рд╢реБрдХреНрд░рд┐рдпрд╛

рдпрджреНрдпрдкрд┐ рдпрд╣ рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ aws-cli рд╕реЗ рдЕрдиреБрдкрд╕реНрдерд┐рдд рдкреНрд░рддреАрдд рд╣реЛрддреА рд╣реИ, рдЗрд╕реЗ рдмреИрд╢ рдореЗрдВ рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдХрд░рдирд╛ рдмрд╣реБрдд рдЖрд╕рд╛рди рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП:

#!/bin/bash
DATE=$(date +%Y-%m-%d)
aws s3 ls s3://bucket.example.com/somefolder/ | grep ${DATE}

@jwieder рдпрд╣ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рд╕реВрдЪреА рдХреЙрд▓ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЛ s3 рддрдХ рдХрдо рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдорд╛рди рд▓реЗрдВ рдХрд┐ рдЖрдк рдкреНрд░рддрд┐рджрд┐рди рдПрдХ рдмрд╛рд▓реНрдЯреА рдореЗрдВ ~1000 рд╕рдорд╛рдЪрд╛рд░ рд▓реЗрдЦ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддреЗ рд╣реИрдВред рдлрд┐рд░ рдЧреНрд░рд╛рд╣рдХ рдкрдХреНрд╖ рдкрд░ рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рдкрд┐рдЫрд▓реЗ 3 рджрд┐рдиреЛрдВ рдХреЗ рд▓реЗрдЦ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ (рдФрд░ рдХреЗрд╡рд▓ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЕрдиреБрд░реЛрдз рдХрд┐рдП рдЬрд╛рдиреЗ рдкрд░)ред рд╕рдордп рдХреА рд╢реБрд░реБрдЖрдд рдХреЗ рдмрд╛рдж рд╕реЗ рд╕рднреА рд▓реЗрдЦреЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП, 100k рдХрд╣рддреЗ рд╣реИрдВ, рд╕рдордп рд▓рдЧрддрд╛ рд╣реИ рдФрд░ рдиреЗрдЯрд╡рд░реНрдХ рд▓рд╛рдЧрдд рдЕрд░реНрдЬрд┐рдд рдХрд░рддрд╛ рд╣реИ (рдХреНрдпреЛрдВрдХрд┐ рдПрдХ рд╕реВрдЪреА рдХреЙрд▓ рдХреЗрд╡рд▓ 1000 рдЖрдЗрдЯрдо рддрдХ рд╡рд╛рдкрд╕ рдЖ рдЬрд╛рдПрдЧреА)ред рдпрд╣ рдХрд╣рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ "рдореБрдЭреЗ 3 рджрд┐рди рдкрд╣рд▓реЗ рд╕реЗ рдмрдирд╛рдИ рдЧрдИ/рд╕рдВрд╢реЛрдзрд┐рдд рд╡рд╕реНрддреБрдУрдВ рдХреА рдПрдХ рд╕реВрдЪреА рджреЗрдВ"ред

рдмрд┐рд▓реНрдХреБрд▓!

рд╕реВрд░реНрдп рдкрд░, резрен рдЬрдирд╡рд░реА реирежрезрем рдЕрдкрд░рд╛рд╣реНрди резрез:релрей рдмрдЬреЗ, рдкреБрдЪрдЯреЗрдХрд╡рд╕реЛрд░реНрдЯреИрдЪ <
рд╕реВрдЪрдирд╛рдПрдВ@github.com> рдиреЗ рд▓рд┐рдЦрд╛:

@jwieder https://github.com/jwieder рдпрд╣ рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЛ рдХрдо рдХрд░рдиреЗ рдореЗрдВ рдорджрдж рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ
s3 рдХреЛ рд╕реВрдЪреА рдХреЙрд▓ рдХреА рд╕рдВрдЦреНрдпрд╛ред рдорд╛рди рд▓реЗрдВ рдХрд┐ рдЖрдк рдкреНрд░рддрд┐рджрд┐рди ~1000 рд╕рдорд╛рдЪрд╛рд░ рд╕рдВрдЧреНрд░рд╣реАрдд рдХрд░рддреЗ рд╣реИрдВ
рдПрдХ рдмрд╛рд▓реНрдЯреА рдореЗрдВ рд▓реЗрдЦред рдлрд┐рд░ рдЧреНрд░рд╛рд╣рдХ рдкрдХреНрд╖ рдкрд░ рдкрд┐рдЫрд▓реЗ 3 . рдХреЗ рд▓реЗрдЦ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ
рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ рджрд┐рди (рдФрд░ рдЕрдзрд┐рдХ рдХреЗрд╡рд▓ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдЕрдиреБрд░реЛрдз рдХрд┐рдП рдЬрд╛рдиреЗ рдкрд░)ред рд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ
рд╕рдордп рдХреА рд╢реБрд░реБрдЖрдд рдХреЗ рдмрд╛рдж рд╕реЗ рд╕рднреА рд▓реЗрдЦреЛрдВ рдХреА рд╕реВрдЪреА, 100k рдХрд╣рддреЗ рд╣реИрдВ, рд╕рдордп рд▓рдЧрддрд╛ рд╣реИ
рдФрд░ рдиреЗрдЯрд╡рд░реНрдХ рд▓рд╛рдЧрдд рдЕрд░реНрдЬрд┐рдд рдХрд░рддрд╛ рд╣реИ (рдХреНрдпреЛрдВрдХрд┐ рдПрдХ рд╕реВрдЪреА рдХреЙрд▓ рдХреЗрд╡рд▓ рдКрдкрд░ рд╡рд╛рдкрд╕ рдЖрдПрдЧреА
1000 рд╡рд╕реНрддреБрдУрдВ рдХреЗ рд▓рд┐рдП)ред рдпрд╣ рдХрд╣рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдмрд╣реБрдд рдЕрдЪреНрдЫрд╛ рд╣реЛрдЧрд╛ "рдореБрдЭреЗ рдПрдХ рд╕реВрдЪреА рджреЗрдВ
3 рджрд┐рди рдкрд╣рд▓реЗ рд╕реЗ рдирд┐рд░реНрдорд┐рдд/рд╕рдВрд╢реЛрдзрд┐рдд рдЖрдЗрдЯрдо"ред

-
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ рдпрд╛ рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/aws/aws-cli/issues/1104#issuecomment -172425517ред

@PuchatekwSzortach @ChrisSLT рдЖрдк рд╕рд╣реА рд╣реИрдВ, рдореЗрд░реЗ рд▓рдВрдЧрдбрд╝реЗ рдЙрддреНрддрд░ рдХреЗ рд▓рд┐рдП рдЦреЗрдж рд╣реИ; рдФрд░ рдореИрдВ рд╕рд╣рдордд рд╣реВрдВ рдХрд┐ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдХреА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдПрдбрдмреНрд▓реНрдпреВрдПрд╕-рдХреНрд▓реА рдореЗрдВ рдмрд╣реБрдд рдорджрджрдЧрд╛рд░ рд╣реЛрдЧреАред рдЗрд╕ рдмреБрдирд┐рдпрд╛рджреА рд╕реБрд╡рд┐рдзрд╛ рдХреЛ рдЫреЛрдбрд╝рдиреЗ рдФрд░ рдлрд╝рд╛рдЗрд▓ рд▓рд┐рд╕реНрдЯрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдмрд┐рд▓рд┐рдВрдЧ рдХрд╛ рд╕рдВрдпреЛрдЬрди рдЕрддреНрдпрдзрд┐рдХ рд╕рдВрджрд┐рдЧреНрдз рд╣реИред рдЬрдм рддрдХ AWS рдкреЗрдиреА-рдкрд┐рдВрдЪрд┐рдВрдЧ рдХреЛ рд░реЛрдХрддрд╛ рд╣реИ рдФрд░ рдлрд╝рд╛рдЗрд▓ рдЧреБрдгреЛрдВ рджреНрд╡рд╛рд░рд╛ рд▓рд┐рд╕реНрдЯрд┐рдВрдЧ рдХрд╛ рдкрд░рд┐рдЪрдп рджреЗрддрд╛ рд╣реИ, рдпрд╣рд╛рдБ рдПрдХ рдФрд░ рд╡рд┐рдЪрд╛рд░ рд╣реИ рдЬрд┐рд╕рдХрд╛ рдореИрдВрдиреЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рд╣реИ рдЬреЛ рдЗрд╕ рдереНрд░реЗрдб рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХ рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рд╣реИ рддреЛ рдореЗрд░рд╛ рдкрд╣рд▓рд╛ рдЙрддреНрддрд░: рдЙрди рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдЬрд┐рдиреНрд╣реЗрдВ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдЯреНрд░реИрдХ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк рдХреЗ рд╕рд╛рде рдирд╛рдо рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ . рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рд╕реНрдерд╛рдиреАрдп рдкрд╛рда рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХреА рдЬрд╛рддреА рд╣реИ (рдпрд╛ рдбреАрдмреА рд╣реЛ рд╕рдХрддреА рд╣реИ рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдЪрд┐рдВрддрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд▓рд╛рдЦреЛрдВ рдлрд╛рдЗрд▓реЗрдВ рд╣реИрдВ)ред рдХрд┐рд╕реА рддрд┐рдерд┐ рдХреА рдЦреЛрдЬ рдореЗрдВ рдлрд╝рд╛рдЗрд▓ рдЦреЛрд▓рдирд╛ рд╢рд╛рдорд┐рд▓ рд╣реИ, рдЖрдЬ рдХреА рддрд╛рд░реАрдЦ рд╕реЗ рдореЗрд▓ рдЦрд╛рдиреЗ рд╡рд╛рд▓реЗ рдлрд╝рд╛рдЗрд▓ рдирд╛рдореЛрдВ рдХреА рддрд▓рд╛рд╢ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦ рд╕рдХрддреА рд╣реИ:

рдкрдврд╝рддреЗ рд╕рдордп -r рдлрд╝рд╛рдЗрд▓рдирд╛рдо
рдХрд░рдирд╛
рдЕрдЧрд░ ["$fileName" == "$рдЖрдЬ"]; рдлрд┐рд░
aws s3 рд╕рд┐рдВрдХ $BUCKETURL /some/local/directory --exclude "*" --include "$fileName"
рдлрд╛рдИ
рдХрд┐рдпрд╛ <"$FILE"

рдЬрд╣рд╛рдВ $FILE рдЖрдкрдХрд╛ рд╕реНрдерд╛рдиреАрдп рдлрд╝рд╛рдЗрд▓ рдирд╛рдо рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛ рд╣реИ рдФрд░ $TODAY рд╡рд╣ рддрд┐рдерд┐ рд╣реИ рдЬрд┐рд╕реЗ рдЖрдк рдЦреЛрдЬ рд░рд╣реЗ рд╣реИрдВред рдЖрдкрдХреЛ рдЗрд╕ рд▓реВрдк рдкрд░ рд╕реНрдерд┐рддрд┐ рдмрджрд▓рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА, рд▓реЗрдХрд┐рди рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдпрд╣ рдЖрдкрдХреЛ рдПрдХ рд╡рд┐рдЪрд╛рд░ рджреЗ рд╕рдХрддрд╛ рд╣реИред

рдЗрд╕ рддрд░рд╣ рд╕реЗ рдХрд╛рдо рдХрд░рдиреЗ рд╕реЗ рдЖрдкрдХреЛ рдЕрдкрдиреА рдмрдХреЗрдЯ рдореЗрдВ рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рд╕реВрдЪреАрдмрджреНрдз рдХрд░рдиреЗ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдХрд┐рд╕реА рднреА рд╢реБрд▓реНрдХ рд╕реЗ рд░рд╛рд╣рдд рдорд┐рд▓рддреА рд╣реИ; рд▓реЗрдХрд┐рди рдпрд╣ рдЙрд╕ рдХреНрд▓рд╛рдЗрдВрдЯ рдкрд░ рднреА рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдЖрдк рд╕реНрдерд╛рдиреАрдп рдлрд╝рд╛рдЗрд▓ рд╕реВрдЪреА рддрдХ рдкрд╣реБрдВрдЪ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЦреЛрдЬ рдХрд░ рд░рд╣реЗ рд╣реИрдВ ... рдЖрдкрдХреЗ рдПрдкреНрд▓рд┐рдХреЗрд╢рди/рд╕рд┐рд╕реНрдЯрдо рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЬреЛ рдЗрд╕ рдкреНрд░рдХрд╛рд░ рдХреЗ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдХреЛ рдЕрдХреНрд╖рдореНрдп рдмрдирд╛ рд╕рдХрддрд╛ рд╣реИред рд╡реИрд╕реЗ рднреА, рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдпрд╣ рдореЗрд░реЗ рдкрд╣рд▓реЗ рдХреЗ рдбрд░рд╛рд╡рдиреЗ рдЙрддреНрддрд░ рдХреЗ рд▓рд┐рдП рдлрд┐рд░ рд╕реЗ рдорджрдж рдХрд░рддрд╛ рд╣реИ рдФрд░ рдХреНрд╖рдорд╛ рдЪрд╛рд╣рддрд╛ рд╣реИред

рд╕рд╣рдордд рдФрд░ рдзрдиреНрдпрд╡рд╛рдж

рдордВрдЧрд▓рд╡рд╛рд░, 19 рдЬрдирд╡рд░реА, 2016 рдХреЛ рд╕реБрдмрд╣ 10:00 рдмрдЬреЗ, рдЬреЛрд╢ рд╡рд┐рдПрдбрд░ рдиреЛрдЯрд┐рдлрд┐рдХреЗрд╢рди @github.com
рд▓рд┐рдЦрд╛ рдерд╛:

@PuchatekwSzortach https://github.com/PuchatekwSzortach @ChrisSLT
https://github.com/ChrisSLT рдЖрдк рд╕рд╣реА рд╣реИрдВ, рдореЗрд░реЗ рд▓рдВрдЧрдбрд╝реЗ рдЙрддреНрддрд░ рдХреЗ рд▓рд┐рдП рдЦреЗрдж рд╣реИ; рддрдерд╛
рдореИрдВ рд╕рд╣рдордд рд╣реВрдВ рдХрд┐ рдЗрд╕ рддрд░рд╣ рдХреА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдПрдбрдмреНрд▓реНрдпреВрдПрд╕-рдХреНрд▓реА рдореЗрдВ рдмрд╣реБрдд рдорджрджрдЧрд╛рд░ рд╣реЛрдЧреАред NS
рдлрд╝рд╛рдЗрд▓ рд▓рд┐рд╕реНрдЯрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдЗрд╕ рдмреБрдирд┐рдпрд╛рджреА рд╕реБрд╡рд┐рдзрд╛ рдХреЛ рдЫреЛрдбрд╝рдиреЗ рдФрд░ рдмрд┐рд▓рд┐рдВрдЧ рдХрд╛ рд╕рдВрдпреЛрдЬрди
рдЕрддреНрдпрдзрд┐рдХ рд╕рдВрджрд┐рдЧреНрдз рд╣реИред рдЬрдм рддрдХ рдПрдбрдмреНрд▓реНрдпреВрдПрд╕ рдкреЗрдиреА-рдкрд┐рдВрдЪрд┐рдВрдЧ рдмрдВрдж рдирд╣реАрдВ рдХрд░рддрд╛ рдФрд░ рд▓рд┐рд╕реНрдЯрд┐рдВрдЧ рдкреЗрд╢ рдирд╣реАрдВ рдХрд░рддрд╛
рдлрд╝рд╛рдЗрд▓ рдЧреБрдг, рдпрд╣рд╛рдБ рдПрдХ рдФрд░ рд╡рд┐рдЪрд╛рд░ рд╣реИ рдЬрд┐рд╕рдХрд╛ рдореИрдВрдиреЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рд╣реИ рдЬреЛ рдЕрдзрд┐рдХ рдкреНрд░рд╛рд╕рдВрдЧрд┐рдХ рд╣реИ
рдЗрд╕ рдзрд╛рдЧреЗ рдХреЗ рд▓рд┐рдП рддреЛ рдореЗрд░рд╛ рдкрд╣рд▓рд╛ рдЙрддреНрддрд░: рдЙрди рдлрд╛рдЗрд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдЬрд┐рдиреНрд╣реЗрдВ рдЗрд╕рдореЗрдВ рдЯреНрд░реИрдХ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ
рд╡реИрд╕реЗ, рдлрд╛рдЗрд▓реЛрдВ рдХреЛ рдЯрд╛рдЗрдорд╕реНрдЯреИрдореНрдк рдХреЗ рд╕рд╛рде рдирд╛рдо рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреА рдПрдХ рд╕реВрдЪреА рд╕реНрдерд╛рдиреАрдп рдореЗрдВ рд╕рдВрдЧреНрд░рд╣реАрдд рдХреА рдЬрд╛рддреА рд╣реИ
рдЯреЗрдХреНрд╕реНрдЯ рдлрд╝рд╛рдЗрд▓ (рдпрд╛ рдбреАрдмреА рд╣реЛ рд╕рдХрддреА рд╣реИ рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдЪрд┐рдВрддрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд▓рд╛рдЦреЛрдВ рдлрд╛рдЗрд▓реЗрдВ рд╣реИрдВ)ред
рдПрдХ рддрд┐рдерд┐ рдХреА рдЦреЛрдЬ рдореЗрдВ рдлрд╝рд╛рдЗрд▓ рдЦреЛрд▓рдирд╛, рдлрд╝рд╛рдЗрд▓ рдирд╛рдореЛрдВ рдХреА рддрд▓рд╛рд╢ рдХрд░рдирд╛ рд╢рд╛рдорд┐рд▓ рд╣реИ
рдЬреЛ рдЖрдЬ рдХреА рддрд╛рд░реАрдЦ рд╕реЗ рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИ рдХреБрдЫ рдЗрд╕ рддрд░рд╣ рджрд┐рдЦ рд╕рдХрддрд╛ рд╣реИ:

рдкрдврд╝рддреЗ рд╕рдордп -r рдлрд╝рд╛рдЗрд▓рдирд╛рдо
рдХрд░рдирд╛
рдЕрдЧрд░ ["$fileName" == "$рдЖрдЬ"]; рдлрд┐рд░
aws s3 рд╕рд┐рдВрдХ $BUCKETURL /some/local/directory --exclude "*" --include
"$рдлрд╝рд╛рдЗрд▓рдирд╛рдо"
рдлрд╛рдИ
рдХрд┐рдпрд╛ <"$FILE"

рдЬрд╣рд╛рдВ $FILE рдЖрдкрдХрд╛ рд╕реНрдерд╛рдиреАрдп рдлрд╝рд╛рдЗрд▓ рдирд╛рдо рдЕрдиреБрдХреНрд░рдордгрд┐рдХрд╛ рд╣реИ рдФрд░ $TODAY рд╡рд╣ рджрд┐рдирд╛рдВрдХ рд╣реИ рдЬрд╣рд╛рдВ рдЖрдк рд╣реИрдВ
рдХреЗ рд▓рд┐рдП рдЦреЛрдЬ рд░рд╣реЗ рд╣реИрдВред рдЖрдкрдХреЛ рдЗрд╕ рд▓реВрдк рдкрд░ рдХрдВрдбреАрд╢рди рдмрджрд▓рдиреА рд╣реЛрдЧреА, рд▓реЗрдХрд┐рди
рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдпрд╣ рдЖрдкрдХреЛ рдПрдХ рд╡рд┐рдЪрд╛рд░ рджреЗ рд╕рдХрддрд╛ рд╣реИред

рдЪреАрдЬреЛрдВ рдХреЛ рдЗрд╕ рддрд░рд╣ рд╕реЗ рдХрд░рдиреЗ рд╕реЗ рдЖрдкрдХреЛ рд▓рд┐рд╕реНрдЯрд┐рдВрдЧ рд╕реЗ рд╕рдВрдмрдВрдзрд┐рдд рдХрд┐рд╕реА рднреА рд╢реБрд▓реНрдХ рд╕реЗ рд░рд╛рд╣рдд рдорд┐рд▓рддреА рд╣реИ
рдЖрдкрдХреА рдмрд╛рд▓реНрдЯреА рдореЗрдВ рдлрд╝рд╛рдЗрд▓реЗрдВ; рд▓реЗрдХрд┐рди рдпрд╣ рдЙрд╕ рдХреНрд▓рд╛рдЗрдВрдЯ рдкрд░ рднреА рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ рдЬрд┐рд╕реЗ рдЖрдк рд╕рдВрдЪрд╛рд▓рд┐рдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ
рд╕реНрдерд╛рдиреАрдп рдлрд╝рд╛рдЗрд▓ рд╕реВрдЪреА рддрдХ рдкрд╣реБрдБрдЪ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рдЦреЛрдЬ ... рдЖрдкрдХреЗ рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддреА рд╣реИ
рдПрдкреНрд▓рд┐рдХреЗрд╢рди / рд╕рд┐рд╕реНрдЯрдо рдЖрд░реНрдХрд┐рдЯреЗрдХреНрдЪрд░ рдЬреЛ рдЗрд╕ рддрд░рд╣ рдХрд╛ рджреГрд╖реНрдЯрд┐рдХреЛрдг рдмрдирд╛ рд╕рдХрддрд╛ рд╣реИ
рдЕрдХреНрд╖рдореНрдпред рд╡реИрд╕реЗ рднреА, рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рдпрд╣ рдореЗрд░реЗ рдкрд╣рд▓реЗ рдХреЗ рд▓рд┐рдП рдлрд┐рд░ рд╕реЗ рдорджрдж рдХрд░рддрд╛ рд╣реИ рдФрд░ рдХреНрд╖рдорд╛ рдЪрд╛рд╣рддрд╛ рд╣реИ
рдбрд░рдкреЛрдХ рдЬрд╡рд╛рдмред

-
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ рдпрд╛ рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/aws/aws-cli/issues/1104#issuecomment -172878454ред

S3api рдФрд░ --query рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд╕рд╛рде рдРрд╕рд╛ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛ рд╣реИред рдпрд╣ OSX рдкрд░ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ
aws s3api рд╕реВрдЪреА-рд╡рд╕реНрддреБрдУрдВ --bucket "рдмрдХреЗрдЯ-рдирд╛рдо" --query 'Contents[?LastModified>= 2016-05-20 ][].{Key: Key}'
рдлрд┐рд░ рдЖрдк рдЕрдиреНрдп s3api рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд╕рд╛рде рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП jq рдпрд╛ grep рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рд╣реИ рдХрд┐ рд╡реЗ рдХреНрдпреЛрдВ рдирд╣реАрдВ рджрд┐рдЦ рд░рд╣реЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЖрдкрдХреЛ рдЙрд╕ рддрд┐рдерд┐ рдХреЛ рдШреЗрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмреИрдХрдЯрд┐рдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдЬрд┐рд╕реЗ рдЖрдк рдкреВрдЫрддрд╛рдЫ рдХрд░ рд░рд╣реЗ рд╣реИрдВ

рдХреНрдпрд╛ рдЖрдкрдХреЗ рд▓рд┐рдП рдкреНрд░рддреНрдпреЗрдХ рджрд┐рди рдХреЗ рд▓рд┐рдП рдлрд╝реЛрд▓реНрдбрд░ рдмрдирд╛рдирд╛ рд╕рдВрднрд╡ рд╣реИ рдФрд░ рдЗрд╕ рддрд░рд╣, рдЖрдк рдирд╡реАрдирддрдо рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреЗрд╡рд▓ рдЖрдЬ рдХреА рдлрд╝рд╛рдЗрд▓реЛрдВ рдпрд╛ рдЕрдзрд┐рдХрд╛рдВрд╢ рдХрд▓ рдХреЗ рдлрд╝реЛрд▓реНрдбрд░реЛрдВ рддрдХ рд╣реА рдкрд╣реБрдБрдЪ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВрдЧреЗред

рд╣рд╛рдВред рдпрджреНрдпрдкрд┐ рдЖрдкрдХреЛ рдЕрдкрдиреА рдХреБрдВрдЬрд┐рдпреЛрдВ рдХреЗ рд▓рд┐рдП рдХреЗрд╡рд▓ рджрд┐рдирд╛рдВрдХ рдЙрдкрд╕рд░реНрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЖрд╕рд╛рди рд▓рдЧ рд╕рдХрддрд╛ рд╣реИ (рдЖрдк --bucket рд╡рд┐рдХрд▓реНрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдмрдХреЗрдЯрдирд╛рдо/рдлрд╝реЛрд▓реНрдбрд░рдирд╛рдо рд╕рдВрдпреЛрдЬрди рдХреЛ рдХреНрд╡реЗрд░реА рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ)ред рджрд┐рдирд╛рдВрдХ рдЙрдкрд╕рд░реНрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рдЖрдк рдХреНрд▓реА рдореЗрдВ --prefix рдзреНрд╡рдЬ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЕрдкрдиреЗ рдкреНрд░рд╢реНрдиреЛрдВ рдХреЛ рддреЗрдЬ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ AWS рдиреЗ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╕рдордп рдореЗрдВ рд╡реГрджреНрдзрд┐ рдХреЗ рд▓рд┐рдП рдкреНрд░рдореБрдЦ рдирд╛рдореЛрдВ рдХреА рд╢реБрд░реБрдЖрдд рдореЗрдВ рд╕рдВрдЦреНрдпрд╛рдУрдВ рдпрд╛ рд╣реИрд╢ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рд╕рд┐рдлрд╛рд░рд┐рд╢ рдХреА рд╣реИред

@willstruebing , рдЖрдкрдХрд╛ рд╕рдорд╛рдзрд╛рди рдЕрднреА рднреА S3 API рдХреЙрд▓ рдХреА рд╕рдВрдЦреНрдпрд╛, рд╕рд░реНрд╡рд░-рд╕рд╛рдЗрдб рдХреНрд╡реЗрд░реА рдЬрдЯрд┐рд▓рддрд╛, рдпрд╛ рд╡рд╛рдпрд░ рдкрд░ рднреЗрдЬреЗ рдЧрдП рдбреЗрдЯрд╛ рдХреА рдорд╛рддреНрд░рд╛ рдХреЛ рдХрдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред --query рдкреИрд░рд╛рдореАрдЯрд░ рдХреЗрд╡рд▓ рдХреНрд▓рд╛рдЗрдВрдЯ-рд╕рд╛рдЗрдб jmespath рдлрд╝рд┐рд▓реНрдЯрд░рд┐рдВрдЧ рдХрд░рддрд╛ рд╣реИред

@kislyuk рдореИрдВ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рд╣рдордд рд╣реВрдВ рдХрд┐ рджрдХреНрд╖рддрд╛ рдХреЗ рдореБрджреНрджреЛрдВ рдХрд╛ рдЬрд╡рд╛рдм рдирд╣реАрдВ рд╣реИред рд╣рд╛рд▓рд╛рдБрдХрд┐, рдореЗрд░рд╛ рдЗрд░рд╛рджрд╛ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкреНрд░рд╢реНрди рдХрд╛ рдЙрддреНрддрд░ рджреЗрдирд╛ рдерд╛:

Is there a way to simply request a list of objects with a modified time <, >, = a certain timestamp?

рд╡рд╣ рдореВрд▓ рдкреНрд░рд╢реНрди рдпрд╣ рд╣реИ рдХрд┐ рдореИрдВ рдЗрд╕ рд╕реВрддреНрд░ рдкрд░ рдХреИрд╕реЗ рдкрд╣реБрдВрдЪрд╛, рдФрд░ рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рдЗрд╕рдХрд╛ рдЙрддреНрддрд░ рд╢рд╛рдорд┐рд▓ рдХрд░рдирд╛ рдЙрдЪрд┐рдд рд╕рдордЭрд╛ред рдЗрд╕ рдореБрджреНрджреЗ рдХреЛ "aws s3 ls - рд╕рдВрд╢реЛрдзрд┐рдд рддрд┐рдерд┐ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдлрд╝рд╛рдЗрд▓реЗрдВ рдвреВрдВрдвреЗрдВ?" рд▓реЗрдмрд▓ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред

рдореБрдЭреЗ рдкреНрд░рд╢реНрди рдХреЗ рджрдХреНрд╖рддрд╛ рднрд╛рдЧреЛрдВ рдкрд░ рдХрд┐рд╕реА рдХреЗ рд╡рд┐рдЪрд╛рд░ рд╕реБрдирдирд╛ рдЕрдЪреНрдЫрд╛ рд▓рдЧреЗрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдореЗрд░реЗ рдкрд╛рд╕ рд╕реНрд╡рдпрдВ рдирд╣реАрдВ рд╣реИ рдФрд░ рдореИрдВ рдЕрднреА рднреА рдЙрддреНрд╕реБрдХ рд╣реВрдВред

s3cmd ls | awk {'print $3'} рдлреЙрд░ рдЖрдИ рдЗрди

рдПрдбрдмреНрд▓реНрдпреВрдПрд╕ рд░рд┐рдЯрд░реНрдирд┐рдВрдЧ рдлрд╛рдЗрд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдХреНрдпрд╛ рд╣реИ? рдХреНрдпрд╛ рдпрд╣ рдЙрдиреНрд╣реЗрдВ рд╡рд░реНрдгрд╛рдиреБрдХреНрд░рдо рдореЗрдВ рд╡рд╛рдкрд╕ рдХрд░рддрд╛ рд╣реИ, рдпрд╛ рд╕рдмрд╕реЗ рд╣рд╛рд▓ рд╣реА рдореЗрдВ рд╕рдВрд╢реЛрдзрд┐рдд рджреНрд╡рд╛рд░рд╛, рдпрд╛ рд╡рд╣ рдорд╛рдирджрдВрдб рдХреНрдпрд╛ рд╣реИ рдЬреЛ рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ 1000 рдлрд╝рд╛рдЗрд▓ рдирд╛рдореЛрдВ рдХреЗ рдЕрдкрдиреЗ рдкрд╣рд▓реЗ рдмреИрдЪ рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд░рддреЗ рд╕рдордп рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ?

рдореИрдВ рд╕рд╣рдордд рд╣реВрдВ рдХрд┐ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдХрд┐рд╕реА рдкреНрд░рдХрд╛рд░ рдХрд╛ рдлрд╝рд┐рд▓реНрдЯрд░ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП (рддрд╛рд░реАрдЦ рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рдирд╛рдо рдХреЗ рдЕрдиреБрд╕рд╛рд░, рдЖрджрд┐) рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдЖрдк рдлрд╝рд╛рдЗрд▓реЛрдВ рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд░рддреЗ рд╕рдордп рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ ... рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдПрдХ рдЕрдиреБрдкрд▓рдмреНрдз рд╡рд┐рд╢реЗрд╖рддрд╛ред :(

рдореИрдВ рд╕рд╣рдордд рд╣реВрдВ рдХрд┐ рдпрд╣ рдлрд╝рд┐рд▓реНрдЯрд░рд┐рдВрдЧ рд╕рд░реНрд╡рд░ рд╕рд╛рдЗрдб рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП рдФрд░ рдпрд╣ рдПрдХ рдореВрд▓рднреВрдд рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рд╕рд░реНрд╡рд░ рд╕рд╛рдЗрдб рдХреНрд╡реЗрд░реА/рдлрд╝рд┐рд▓реНрдЯрд░рд┐рдВрдЧ рдХреЗ рд▓рд┐рдП +1

рд╕рд░реНрд╡рд░ рд╕рд╛рдЗрдб рдлрд╝рд┐рд▓реНрдЯрд░рд┐рдВрдЧ рдХреЗ рд▓рд┐рдП +1

рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЕрднреА рднреА рдмрд╣реБрдд рдЬрд░реВрд░реА рд╣реИ, +1

@chescales рдФрд░ рдмрд╛рдХреА рдХреЗ рд╕рд╛рде рд╕рд╣рдордд, рд╕рд░реНрд╡рд░ рд╕рд╛рдЗрдб рдлрд╝рд┐рд▓реНрдЯрд░рд┐рдВрдЧ рдХреЗ рд▓рд┐рдП +1

+1

+1

+1

+1

+1

+1

+1

+1

+1

+1

+1

+1

+1

рдпрд╣ рд╕реБрд╡рд┐рдзрд╛ рдкрд╣рд▓реЗ рд╕реЗ рдХреИрд╕реЗ рдирд╣реАрдВ рд╣реИ?

+100000

+1e999

+1

+1

+1

+1

+1

+1

+1

+1

+65535

@willstruebing рдХреА рдЯрд┐рдкреНрдкрдгреА рдиреЗ рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдХрд┐рдпрд╛, рдЬреИрд╕реЗ:

aws s3api list-objects --bucket "mybucket" --prefix "some/prefix" --query "Contents[?LastModified>=`2018-08-22`].{Key: Key}"

рдУрд╣ рдХреЛрдИ рдмрд╛рдд рдирд╣реАрдВ - рдореИрдВ рдЗрд╕ рдХрдорд╛рдВрдб рд╕реЗ рдиреЗрдЯрд╡рд░реНрдХ рдЯреНрд░реИрдлрд╝рд┐рдХ рдХреЛ рджреЗрдЦрдиреЗ рдХреЗ рдмрд╛рдж рджреЗрдЦрддрд╛ рд╣реВрдВ рдХрд┐ рд╕рднреА рдХреБрдВрдЬрд┐рдпрд╛рдБ рдЕрднреА рднреА s3 рд╕реЗ рдбрд╛рдЙрдирд▓реЛрдб рдХреА рдЬрд╛ рд░рд╣реА рд╣реИрдВ рдФрд░ aws cli рдлрд╝рд┐рд▓реНрдЯрд░рд┐рдВрдЧ рдХреНрд▓рд╛рдЗрдВрдЯ рд╕рд╛рдЗрдб рдХрд░ рд░рд╣реА рд╣реИ!

+1

+1

+1

+1

--exclude рдФрд░ --include рдлрд╝рд┐рд▓реНрдЯрд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдХреНрдпрд╛?

!/рдмрд┐рди/рдмрд╛рд╢

DATE=$(рджрд┐рдирд╛рдВрдХ +%Y-%m-%d)
aws s3 ls s3://bucket.example.com/somefolder/ --exclude " " --include

+1

+1

+1 рдорд┐рд▓рд┐рдпрди

+1

+тИЮ

+тИЮ+1

+1

+1

+1

++

+1

+1

+1

+1 :( :(

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ AWS рдХреЗ рдореВрд▓реНрдп рдирд┐рд░реНрдзрд╛рд░рдг рдореЙрдбрд▓ рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИ, рд╕реБрдкрд░ рд╕рд╕реНрддреЗ рд╕реНрдЯреЛрд░реЗрдЬ рд▓реЗрдХрд┐рди рдПрдХреНрд╕реЗрд╕ рдЯреВ рдкреЗред рдмрдбрд╝реА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдЕрдЪреНрдЫрд╛ рд╣реИ рд▓реЗрдХрд┐рди рдпрджрд┐ рдЖрдк рд▓рд╛рдЦреЛрдВ рдЫреЛрдЯреА рдлрд╝рд╛рдЗрд▓реЛрдВ рдХреЛ рдХреНрд╡реЗрд░реА/рдкреНрд░рдмрдВрдзрд┐рдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рддреЛ рдпрд╣ рдЖрдкрдХреЛ рдмрд░реНрдмрд╛рдж рдХрд░ рджреЗрдЧрд╛ред

+1

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдпрд╣реА рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдЙрдиреНрд╣реЛрдВрдиреЗ рдПрдереЗрдирд╛ рдмрдирд╛рдпрд╛? рдХреБрдЫ рдШрдВрдЯрд┐рдпрд╛рдБ рдФрд░ рд╕реАрдЯреА рдЬреЛрдбрд╝рддреЗ рд╕рдордп рдмрд┐рд▓ рдХрд░рдиреЗ рдХрд╛ рджреВрд╕рд░рд╛ рддрд░реАрдХрд╛?

+1

+1

+1

рдореБрдЭреЗ s3 рдмрд╛рд▓реНрдЯреА рд╡рд╕реНрддреБрдУрдВ рдХреЛ рд╕реВрдЪреАрдмрджреНрдз рдХрд░рдирд╛ рд╣реИ рдЬреЛ рдкреВрд░реНрд╡ рдореЗрдВ рджреЛ рддрд┐рдерд┐рдпреЛрдВ рдХреЗ рдмреАрдЪ рд╕рдВрд╢реЛрдзрд┐рдд рд╣реИрдВред 2019-06-08 рд╕реЗ 2019-06-11

рдХреЛрдИ рд╡рд┐рдЪрд╛рд░ рдХрд┐рд╕реА рдХреЛ?

aws s3api list-objects --bucket "BUCKET" --prefix "OPTIONAL" --query "Contents[?LastModified>='2019-06-08'][].{Key: Key,LastModified: LastModified}" рдФрд░ рдлрд┐рд░ 2019-06-11 . рдХреЗ рдмрд╛рдж рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП JQ рдпрд╛ рдЕрдкрдиреЗ рдкрд╕рдВрджреАрджрд╛ рдЯреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ

рдпрд╣ рдПрдкреАрдЖрдИ рдХреЙрд▓ рдХреЛ рдЦрддреНрдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рд╡реЗ рдкреНрд░рд╢реНрди рдЧреНрд░рд╛рд╣рдХ рдкрдХреНрд╖ рд╣реИрдВ

рдордВрдЧрд▓, рдЬреВрди 11, 2019 рдкрд░, 2:07 willstruebing [email protected]
рд▓рд┐рдЦрд╛ рдерд╛:

рдПрдбрдмреНрд▓реНрдпреВрдПрд╕ s3api рд╕реВрдЪреА-рд╡рд╕реНрддреБрдУрдВ --рдмрд╛рд▓реНрдЯреА "рдмрдХреЗрдЯ" --рдЙрдкрд╕рд░реНрдЧ "рд╡реИрдХрд▓реНрдкрд┐рдХ" --рдХреНрд╡реЗрд░реА
"рд╕рд╛рдордЧреНрд░реА [? LastModified> = '2019-06-08'] []ред {рдХреБрдВрдЬреА: рдХреБрдВрдЬреА, LastModified:
LastModified}" рдФрд░ рдЙрд╕рдХреЗ рдмрд╛рдж рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП JQ рдпрд╛ рдЕрдкрдиреЗ рдкрд╕рдВрджреАрджрд╛ рдЯреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ
2019-06-11

-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдиреЗ рдЯрд┐рдкреНрдкрдгреА рдХреА рдереАред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/aws/aws-cli/issues/1104?email_source=notifications&email_token=AABLGMW5AFAU5BUNM7FEMZ3PZ7SV3A5CNFSM4A2VNZ2KYY3PNVWWK3TUL52HS4DFVREXG43VMVB#03ZGODNMVX
рдпрд╛ рдереНрд░реЗрдб рдХреЛ рдореНрдпреВрдЯ рдХрд░реЗрдВ
https://github.com/notifications/unsubscribe-auth/AABLGMVTIZDPPIEUK2CZR6TPZ7SV3ANCNFSM4A2VNZ2A
.

@dmead рдореИрдВ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕рд╣рдордд рд╣реВрдБред рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╕рд░реНрд╡рд░ рд╕рд╛рдЗрдб рдлрд╝рд┐рд▓реНрдЯрд░рд┐рдВрдЧ рдХрд░рдиреЗ рдХреА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдореМрдЬреВрдж рдирд╣реАрдВ рд╣реИ (рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣реА рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдЗрддрдиреЗ рд╕рд╛рд░реЗ рд▓реЛрдЧ рдЗрд╕ рд╡рд┐рд╢реЗрд╖ рдкреЛрд╕реНрдЯ рдкрд░ рд╕рдорд╛рдкреНрдд рд╣реЛрддреЗ рд╣реИрдВ), рдЗрд╕рд▓рд┐рдП рдпрд╣ рдПрдХрдорд╛рддреНрд░ рдХрд╛рдордХрд╛рдЬ рд╣реИ рдЬрд┐рд╕реЗ рдореИрдВ рдХрд╛рд░реНрдп рдХреЛ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирддрд╛ рд╣реВрдВред рдХреНрдпрд╛ рдЖрдкрдХреЗ рдкрд╛рд╕ рдЗрд╕реЗ рд╕рд░реНрд╡рд░ рд╕рд╛рдЗрдб рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рд╣реИ рдпрд╛ рдпрд╣ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рд╕рдорд╛рдзрд╛рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕рд┐рд░реНрдл рдПрдХ рдЕрд╡рд▓реЛрдХрди рд╣реИ? рдореБрдЭреЗ рдпрд╣ рдХреИрд╕реЗ рдХрд░рдирд╛ рд╣реИ рдФрд░ рдПрдкреАрдЖрдИ рдХреЙрд▓ рдХреА рдорд╛рддреНрд░рд╛ рдХреЛ рдХрдо рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЗрдирдкреБрдЯ рд╕реБрдирдирд╛ рдЕрдЪреНрдЫрд╛ рд▓рдЧреЗрдЧрд╛ред

рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рд╕рдордп рд╣реИ, рддреЛ рдореИрдВ рдПрдереЗрдирд╛ рдореЗрдВ рдореЗрдЯрд╛рдбреЗрдЯрд╛ рдХрд╛ рдЪрдпрди рдХрд░рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ред рдореИрдВ
рдореБрдЭреЗ рдЦреБрдж рдореМрдХрд╛ рдирд╣реАрдВ рдорд┐рд▓рд╛, рд▓реЗрдХрд┐рди рдпрд╣ рдПрдХ рд╕рдВрднрд╛рд╡рд┐рдд рд╕рдорд╛рдзрд╛рди рдХреА рддрд░рд╣ рд▓рдЧ рд░рд╣рд╛ рдерд╛ред

рдмреБрдз, рдЬреВрди 12, 2019 10:28 рдкреВрд░реНрд╡рд╛рд╣реНрди willstruebing рдкрд░ рдкрд░ [email protected]
рд▓рд┐рдЦрд╛ рдерд╛:

@dmead https://github.com/dmead рдореИрдВ рдкреВрд░реА рддрд░рд╣ рд╕рд╣рдордд рд╣реВрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐
рд╕рд░реНрд╡рд░ рд╕рд╛рдЗрдб рдлрд╝рд┐рд▓реНрдЯрд░рд┐рдВрдЧ рдХрд░рдиреЗ рдХреА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдореМрдЬреВрдж рдирд╣реАрдВ рд╣реИ (рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ)
рдпрд╣реА рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдЗрддрдиреЗ рд╕рд╛рд░реЗ рд▓реЛрдЧ рдЗрд╕ рд╡рд┐рд╢реЗрд╖ рдкреЛрд╕реНрдЯ рдкрд░ рд╕рдорд╛рдкреНрдд рд╣реЛрддреЗ рд╣реИрдВ), рддреЛ рдпрд╣ рд╣реИ
рдХреЗрд╡рд▓ рдХрд╛рд░реНрдп рдХреЛ рдкреВрд░рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдХрд╛рдордХрд╛рдЬред рдХреНрдпрд╛ рдЖрдкрдХреЗ рдкрд╛рд╕ рдПрдХ рд╣реИрдВ
рдЗрд╕реЗ рд╕рд░реНрд╡рд░ рд╕рд╛рдЗрдб рдХрд░рдиреЗ рдХрд╛ рддрд░реАрдХрд╛ рдпрд╛ рдпрд╣ рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕рд┐рд░реНрдл рдПрдХ рдЕрд╡рд▓реЛрдХрди рд╣реИ
рд╕рдорд╛рдзрд╛рди? рдореБрдЭреЗ рдпрд╣ рдХреИрд╕реЗ рдХрд░рдирд╛ рд╣реИ рдФрд░ рдЗрд╕рдХреА рдорд╛рддреНрд░рд╛ рдХреЛ рдХрдо рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЗрдирдкреБрдЯ рд╕реБрдирдирд╛ рдЕрдЪреНрдЫрд╛ рд▓рдЧреЗрдЧрд╛
рдПрдкреАрдЖрдИ рдХреЙрд▓ред

-
рдЖрдк рдЗрд╕реЗ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд░рд╣реЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдЗрд╕ рдИрдореЗрд▓ рдХрд╛ рд╕реАрдзреЗ рдЙрддреНрддрд░ рджреЗрдВ, рдЗрд╕реЗ GitHub рдкрд░ рджреЗрдЦреЗрдВ
https://github.com/aws/aws-cli/issues/1104?email_source=notifications&email_token=AABLGMTQZD6OWVH4KDMSJPLP2EBY7A5CNFSM4A2VNZ2KYY3PNVWWK3TUL52HS4DFVREXG43VMVBJ#TZ1229H
рдпрд╛ рдереНрд░реЗрдб рдХреЛ рдореНрдпреВрдЯ рдХрд░реЗрдВ
https://github.com/notifications/unsubscribe-auth/AABLGMRLA5OYSYGEYNPUY5DP2EBY7ANCNFSM4A2VNZ2A
.

+24

рд╣рд░ рдХреЛрдИ рдЗрд╕реЗ рдКрдкрд░ рдЙрдард╛ рд░рд╣рд╛ рд╣реИ, рдЗрд╕реЗ рдПрдбрдмреНрд▓реНрдпреВрдПрд╕ рд╕реАрдПрд▓рдЖрдИ рдХреЗ рд╕рд╛рде рджрд╛рдЦрд┐рд▓ рдХрд░рдиреЗ рд╕реЗ рдорджрдж рдирд╣реАрдВ рдорд┐рд▓рддреА рд╣реИред рдПрдбрдмреНрд▓реНрдпреВрдПрд╕ рд╕реАрдПрд▓рдЖрдИ S3 рджреНрд╡рд╛рд░рд╛ рдмрд╛рдзреНрдп рд╣реИред рдпрджрд┐ рдЖрдк рдЗрд╕реЗ рдареАрдХ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ рддреЛ рдЯреВрд▓ рдХреЗ рдЬреАрдердм рдХреЗ рдмрдЬрд╛рдп рдПрд╕ 3 рдЯреАрдо рдХреЗ рд╕рд╛рде рдлрд╛рдЗрд▓ рдХрд░реЗрдВ: рдкреА

@ рдорд╛рдЗрдХ-рдмреЗрд▓реА рдареАрдХ рд╣реИ, рдФрд░ рдореИрдВ рдпрд╣ рдХреИрд╕реЗ рдХрд░реВрдБ?

рдЕрдЧрд░ рдпрд╣ рдореИрдВ рд╡реНрдпрдХреНрддрд┐рдЧрдд рд░реВрдк рд╕реЗ рд╣реЛрддрд╛ рддреЛ рдореИрдВ AWS рдЯрд┐рдХрдЯ рджрд╛рдЦрд┐рд▓ рдХрд░рддрд╛ рддрд╛рдХрд┐ рдпрд╣ рд╕реЗрд╡рд╛ рджрд▓ рдХреЛ рдорд┐рд▓ рдЬрд╛рдПред рд▓реЗрдХрд┐рди рдореИрдВ рдПрдбрдмреНрд▓реНрдпреВрдПрд╕ рдХреЗ рд▓рд┐рдП рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ред рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рдЗрд╕ рдкрд░ '+1' рдЯрд┐рдкреНрдкрдгреА рдХрд░рдиреЗ рд╕реЗ рдХреЛрдИ рдмрджрд▓рд╛рд╡ рдирд╣реАрдВ рд╣реЛрдЧрд╛ред

S3api рдФрд░ --query рдлрд╝рдВрдХреНрд╢рди рдХреЗ рд╕рд╛рде рдРрд╕рд╛ рдХрд░рдиреЗ рдХрд╛ рдПрдХ рддрд░реАрдХрд╛ рд╣реИред рдпрд╣ OSX рдкрд░ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ
aws s3api рд╕реВрдЪреА-рд╡рд╕реНрддреБрдУрдВ --bucket "рдмрдХреЗрдЯ-рдирд╛рдо" --query 'Contents[?LastModified>= 2016-05-20 ][].{Key: Key}'
рдлрд┐рд░ рдЖрдк рдЕрдиреНрдп s3api рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд╕рд╛рде рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП jq рдпрд╛ grep рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдлрд╝рд┐рд▓реНрдЯрд░ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рд╕рдВрдкрд╛рджрд┐рдд рдХрд░реЗрдВ: рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рд╣реИ рдХрд┐ рд╡реЗ рдХреНрдпреЛрдВ рдирд╣реАрдВ рджрд┐рдЦ рд░рд╣реЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдЖрдкрдХреЛ рдЙрд╕ рддрд┐рдерд┐ рдХреЛ рдШреЗрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмреИрдХрдЯрд┐рдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдЬрд┐рд╕реЗ рдЖрдк рдкреВрдЫрддрд╛рдЫ рдХрд░ рд░рд╣реЗ рд╣реИрдВ

рдЗрд╕ рдЙрддреНрддрд░ рдХреЛ рдЖрдЬрдорд╛рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ awscli рдХрд╛ рдирд╡реАрдирддрдо рд╕рдВрд╕реНрдХрд░рдг рд╣реИред рдореИрдВрдиреЗ рдЕрдкрдЧреНрд░реЗрдб рдХрд┐рдпрд╛
awscli 1.11.47 -> 1.16.220
рдФрд░ рдЗрд╕рдиреЗ рдЦреВрдВрдЦрд╛рд░ рдХреНрд▓рд╛рдЗрдВрдЯ-рд╕рд╛рдЗрдб рдлрд╝рд┐рд▓реНрдЯрд░рд┐рдВрдЧ рдХрд┐рдпрд╛ рд▓реЗрдХрд┐рди рдпрд╣ рдХрд╛рдо рдХрд░ рдЧрдпрд╛ред
рд╕рд░реНрд╡рд░-рд╕рд╛рдЗрдб рдлрд╝рд┐рд▓реНрдЯрд░рд┐рдВрдЧ рдХреЗ рд▓рд┐рдП +1ред

+1

+1

рдХреГрдкрдпрд╛ рдзрд╛рдЧрд╛ рдкрдврд╝реЗрдВ, +1 рдХреБрдЫ рдирд╣реАрдВ рдХрд░рддрд╛

рдЖрдк рдЗрд╕реЗ рдЖрд╕рд╛рдиреА рд╕реЗ рдирд╣реАрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рд▓реЗрдХрд┐рди рдЗрди рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЯрд┐рдк рд╣реИ:

 aws s3api list-objects --bucket "bucket-name" --query 'Contents[?LastModified>=`2016-05-20`][].{Key: Key}'

рдпрд╣ рдЕрднреА рднреА рдХреНрд▓рд╛рдЗрдВрдЯ рд╕рд╛рдЗрдб рд╣реИ рдФрд░ рдмрд╣реБрдд рд╕рд╛рд░реЗ рдЕрдиреБрд░реЛрдз рдХрд░реЗрдЧрд╛ред

рдЬреИрд╕рд╛ рдХрд┐ рдкрд╣рд▓реЗ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдпрд╣ рдЗрд╕реЗ рдХреНрд▓рд╛рдЗрдВрдЯ рд╕рд╛рдЗрдб рд╕рдВрднрд╛рд▓рддрд╛ рд╣реИред рддреЛ рдЖрдк рдЕрднреА рднреА рд╕рдВрднрд╛рд╡рд┐рдд рд░реВрдк рд╕реЗ рдХреЙрд▓ рдХреЗ рд╕рд╛рде рдмрд╛рд▓реНрдЯреА рдХреЛ рдкрдЯрдХ рджреЗрддреЗ рд╣реИрдВред

рдлрд╝рд┐рд▓реНрдЯрд░рд┐рдВрдЧ рд╕рд░реНрд╡рд░ рд╕рд╛рдЗрдб рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП рдФрд░ рдореЗрд░реЗ рд╡рд┐рдЪрд╛рд░ рд╕реЗ рдпрд╣ рдПрдХ рдореВрд▓рднреВрдд рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред

рдпрд╣рд╛рдБ aws s3 рд╕рд┐рдВрдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рдЙрджрд╛рд╣рд░рдг рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдХреЗрд╡рд▓ рдирдИ рдлрд╝рд╛рдЗрд▓реЗрдВ рдбрд╛рдЙрдирд▓реЛрдб рдХреА рдЬрд╛рддреА рд╣реИрдВред рдпрд╣ рд▓реЙрдЧ рдХреЛ рдПрдХ рд▓реЙрдЧ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЬреЛрдбрд╝рддрд╛ рд╣реИ рдФрд░ рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╕рд╣реЗрдЬрдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдХреЛ рд╣рдЯрд╛ рджреЗрддрд╛ рд╣реИред рдлрд┐рд░ рдЖрдк рд▓реЙрдЧ рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП grep рдФрд░ рдЪреАрдЬреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ, рдореБрдЭреЗ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдлрд╝рд╛рдЗрд▓ рдореЗрдВ рдЕрджреНрд╡рд┐рддреАрдп рд╣рд┐рдЯ рдЧрд┐рдирдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдереАред рдиреАрдЪреЗ рджрд┐рдпрд╛ рдЧрдпрд╛ рдпрд╣ рдХреЛрдб рдЗрд╕ рд▓рд┐рдВрдХ рд╕реЗ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛: https://shapeshed.com/aws-cloudfront-log/ sed рдХрдорд╛рдВрдб рдореИрдХ рдкрд░ рднреА рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ рдФрд░ рд▓реЗрдЦ рдореЗрдВ рдЬреЛ рд╣реИ рдЙрд╕рд╕реЗ рдЕрд▓рдЧ рд╣реИред рдЙрдореНрдореАрдж рд╣реИ рдпреЗ рдорджрдж рдХрд░реЗрдЧрд╛!

aws s3 sync s3://<YOUR_BUCKET> .
cat *.gz > combined.log.gz
gzip -d combined.log.gz
sed -i '' '/^#/ d' combined.log

# counts unique logs for px.gif hits
grep '/px.gif' combined.log | cut -f 1,8 | sort | uniq -c | sort -n -r

# above command will return something like below. The total count followed by the date and the file name.
17 2020-01-02 /px.gif
 9 2020-01-03 /px.gif

рдореИрдВ рдЗрд╕реЗ рдПрдХ рдкреБрд░рд╛рдирд╛ рдореБрджреНрджрд╛ рдЬрд╛рдирддрд╛ рд╣реВрдВ рд▓реЗрдХрд┐рди рдпрд╣рд╛рдВ рдПрдХ рд╕реБрд░реБрдЪрд┐рдкреВрд░реНрдг рд╕рдорд╛рдзрд╛рди рдЫреЛрдбрд╝рдирд╛ рд╣реИ:

aws s3api рд╕реВрдЪреА-рд╡рд╕реНрддреБрдУрдВ --output=text --query "Contents[?LastModified >= <DATE_YOU_WANT_TO_START> ].{Key: Key}"

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

vadimkim picture vadimkim  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

brettswift picture brettswift  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

ehammond picture ehammond  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

KimberleySDU picture KimberleySDU  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

schams-net picture schams-net  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ