이 설명서는 의 버전 1 AWS CLI 전용입니다. 의 버전 2와 관련된 설명서는 버전 2 사용 설명서 를 AWS CLI참조하세요.
기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
AWS CLI 페이지 매김 옵션 사용
이 주제에서는 AWS CLI의 출력에 페이지 번호를 매기는 다양한 방법에 대해 설명합니다.
서버 측 페이지 매김
많은 항목 목록을 반환할 수 있는 명령의 경우 AWS Command Line Interface (AWS CLI) 에는 서비스를 AWS CLI 호출하여 목록을 채울 때 출력에 포함되는 항목 수를 제어하는 여러 옵션이 있습니다. API
옵션에는 다음 사항이 포함됩니다.
기본적으로 는 개별 서비스에 의해 결정된 페이지 크기를 AWS CLI 사용하며 사용 가능한 모든 항목을 검색합니다. 예를 들어 Amazon S3의 기본 페이지 크기는 1,000입니다. 3,500개 객체를 포함하는 Amazon S3 버킷에서 aws
s3api list-objects
를 실행할 경우 AWS CLI
는 백그라운드에서 서비스별 페이지 매김 로직을 처리하고 최종 출력에 3,500개 객체를 모두 반환하면서 Amazon S3에 대한 4개 호출을 자동으로 작성합니다.
--no-paginate 파라미터를 사용하는 방법
--no-paginate
옵션은 클라이언트 측에서 다음 페이지 매김 토큰을 사용 중지합니다. 명령을 사용하는 경우 기본적으로 는 AWS CLI 자동으로 여러 번 호출하여 가능한 모든 결과를 반환하여 페이지 매김을 생성합니다. 각 페이지에 대해 한 번 호출합니다. 페이지 매김을 비활성화하면 명령 결과의 첫 페이지에서 한 AWS CLI 번만 호출됩니다.
예를 들어, 3,500개의 객체가 포함된 Amazon S3 aws s3api list-objects
버킷에서 실행하는 경우, AWS CLI 에서만 Amazon S3를 처음 호출하여 최종 출력에서 처음 1,000개의 객체만 반환합니다.
$
aws s3api list-objects \ --bucket my-bucket \
--no-paginate
{ "Contents": [ ...
--page-size 파라미터를 사용하는 방법
많은 리소스에서 list 명령을 실행할 때 문제가 발생할 경우, 기본값 페이지 크기가 너무 크기 때문일 수 있습니다. 이로 인해 AWS 서비스 호출이 최대 허용 시간을 초과하여 “제한 시간 초과” 오류가 발생할 수 있습니다. 이 --page-size
옵션을 사용하여 AWS 서비스에 대한 각 호출에서 더 적은 수의 항목을 AWS CLI 요청하도록 지정할 수 있습니다. 는 AWS CLI 여전히 전체 목록을 가져오지만 백그라운드에서 더 많은 서비스 API 호출을 수행하고 호출할 때마다 더 적은 수의 항목을 검색합니다. 그러면 각각의 호출이 시간 초과 없이 성공할 확률이 높아집니다. 페이지 크기를 변경해도 출력에는 영향을 주지 않으며 출력을 생성하는 데 필요한 API 호출 수에만 영향을 줍니다.
$
aws s3api list-objects \ --bucket my-bucket \
--page-size 100
{ "Contents": [ ...
--max-items 파라미터를 사용하는 방법
AWS CLI 출력에 한 번에 더 적은 수의 항목을 포함하려면 --max-items
옵션을 사용하십시오. 에서는 AWS CLI 여전히 앞에서 설명한 대로 서비스의 페이지 매김을 처리하지만 지정한 한 번에 항목 수만 출력합니다.
$
aws s3api list-objects \ --bucket my-bucket \ --max-items 100
{ "NextToken": "eyJNYXJrZXIiOiBudWxsLCAiYm90b190cnVuY2F0ZV9hbW91bnQiOiAxfQ==", "Contents": [ ...
--starting-token 파라미터를 사용하는 방법
출력 항목 수 (--max-items
) 가 기본 API 호출에서 반환된 총 항목 수보다 적은 경우 출력에는 다음 항목 세트를 검색하기 위해 후속 명령에 전달할 수 있는 값이 포함됩니다. NextToken
다음 예제를 통해 앞의 예제에서 반환된 NextToken
값을 사용하는 방법을 배우고, 두 번째 백 개 항목을 검색할 수 있습니다.
참고
--starting-token
파라미터는 null이거나 비어있을 수 없습니다. 이전 명령이 NextToken
값을 반환하지 않으면 반환할 더 이상의 항목이 없는 것이기 때문에 명령을 다시 호출할 필요가 없습니다.
$
aws s3api list-objects \ --bucket my-bucket \ --max-items 100 \
--starting-token eyJNYXJrZXIiOiBudWxsLCAiYm90b190cnVuY2F0ZV9hbW91bnQiOiAxfQ==
{ "Contents": [ ...
지정된 AWS 서비스는 호출할 때마다 동일한 순서로 항목을 반환하지 않을 수 있습니다. --page-size
및 --max-items
에 서로 다른 값을 지정하면 누락되거나 중복된 항목을 포함해 예상치 못한 결과가 발생할 수 있습니다. 이를 방지하려면 --page-size
및 --max-items
에 동일한 번호를 사용하여 AWS CLI
의 페이지 매김을 기본 서비스의 페이지 매김과 동기화하십시오. 또한 전체 목록을 검색하고 필요한 구문 분석 작업을 로컬에서 수행할 수 있습니다.