매우 큰 버킷 (수십만 개의 개체)이 있습니다. 나는 경로를 가지고있다. (s3 : // myBucket/path1/path2)./path2는 또한 폴더 인 업로드를 가져옵니다.AWS CLI S3API 경로에 최신 폴더 찾기
s3://myBucket/path1/path2/v6.1.0
s3://myBucket/path1/path2/v6.1.1
s3://myBucket/path1/path2/v6.1.102
s3://myBucket/path1/path2/v6.1.2
s3://myBucket/path1/path2/v6.1.25
s3://myBucket/path1/path2/v6.1.99
S3는 (어떤 의미) 정렬 계정 버전 번호를 고려하지 않고 알파벳 순으로 목록의 마지막 업로드 마지막이되지 않습니다 : 같은 샘플을 볼 수 있습니다. 이 예제에서 .../v6.1.102가 가장 최신 버전입니다.
는 여기에 지금까지있어 무엇 :
aws s3api list-objects
--bucket myBucket
--query "sort_by(Contents[?contains(Key, \`path1/path2\`)],&LastModified)"´
--max-items 20000
그래서 여기에서 문제가 최대-항목은 재귀 버킷에있는 모든 파일에서 알파벳 순으로 시작하는 것 같다. 20000은 내 파일로 이동하지만 많은 파일을 처리하는 것은 매우 느립니다. 이것은 여전히 전체 버킷을 검색되지만 난 그냥 경로 2의 /로 범위를 좁힐 할 -
1 :
그래서 제 질문은 두 가지이다. 내가 할 수 있을까?
2 -이 목록에는 개체 만 표시되며 대신 경로 목록을 가져올 수 있습니까?
기본적으로 최종 목표는 위의 예제에서 'v6.1.102'와 같은 최신 폴더 이름을 반환하는 명령입니다.
'head-object' 사용 – Asdfg