에서 페이지 매김 옵션 사용 AWS CLI - AWS Command Line Interface

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

에서 페이지 매김 옵션 사용 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에서 를 실행하는 경우 는 Amazon S3에 대한 첫 번째 호출 AWS CLI 만 수행하여 최종 출력에서 처음 1,000개 객체만 반환합니다.

$ aws s3api list-objects \ --bucket amzn-s3-demo-bucket \ --no-paginate { "Contents": [ ...

--page-size 파라미터를 사용하는 방법

많은 리소스에서 list 명령을 실행할 때 문제가 발생할 경우, 기본값 페이지 크기가 너무 크기 때문일 수 있습니다. 이로 인해 AWS 서비스에 대한 호출이 최대 허용 시간을 초과하고 “시간 초과” 오류가 발생할 수 있습니다. --page-size 옵션을 사용하여 AWS 서비스에 대한 각 호출에서 더 적은 수의 항목을 AWS CLI 요청하도록 지정할 수 있습니다. 는 AWS CLI 여전히 전체 목록을 검색하지만 백그라운드에서 더 많은 수의 서비스 API 호출을 수행하고 각 호출에서 더 적은 수의 항목을 검색합니다. 그러면 각각의 호출이 시간 초과 없이 성공할 확률이 높아집니다. 페이지 크기를 변경해도 출력에는 영향을 주지 않으며, 출력을 생성하기 위해 수행해야 하는 API 호출 수에만 영향을 미칩니다.

$ aws s3api list-objects \ --bucket amzn-s3-demo-bucket \ --page-size 100 { "Contents": [ ...

--max-items 파라미터를 사용하는 방법

AWS CLI 출력에 한 번에 더 적은 항목을 포함하려면 --max-items 옵션을 사용합니다. 는 AWS CLI 여전히 앞서 설명한 대로 서비스 페이지 매김을 처리하지만 지정한 시간에 항목 수만 출력합니다.

$ aws s3api list-objects \ --bucket amzn-s3-demo-bucket \ --max-items 100 { "NextToken": "eyJNYXJrZXIiOiBudWxsLCAiYm90b190cnVuY2F0ZV9hbW91bnQiOiAxfQ==", "Contents": [ ...

--starting-token 파라미터를 사용하는 방법

출력 항목 수(--max-items)가 기본 API 호출에서 반환한 총 항목 수보다 적으면 출력에는 다음 항목 세트를 검색하기 위해 후속 명령에 전달할 수 NextToken 있는 이 포함됩니다. 다음 예제를 통해 앞의 예제에서 반환된 NextToken 값을 사용하는 방법을 배우고, 두 번째 백 개 항목을 검색할 수 있습니다.

참고

--starting-token 파라미터는 null이거나 비어있을 수 없습니다. 이전 명령이 NextToken 값을 반환하지 않으면 반환할 더 이상의 항목이 없는 것이기 때문에 명령을 다시 호출할 필요가 없습니다.

$ aws s3api list-objects \ --bucket amzn-s3-demo-bucket \ --max-items 100 \ --starting-token eyJNYXJrZXIiOiBudWxsLCAiYm90b190cnVuY2F0ZV9hbW91bnQiOiAxfQ== { "Contents": [ ...

지정된 AWS 서비스는 호출할 때마다 동일한 순서로 항목을 반환하지 않을 수 있습니다. --page-size--max-items에 서로 다른 값을 지정하면 누락되거나 중복된 항목을 포함해 예상치 못한 결과가 발생할 수 있습니다. 이를 방지하려면 --page-size--max-items에 동일한 번호를 사용하여 AWS CLI 의 페이지 매김을 기본 서비스의 페이지 매김과 동기화하십시오. 또한 전체 목록을 검색하고 필요한 구문 분석 작업을 로컬에서 수행할 수 있습니다.

클라이언트 측 페이저

AWS CLI 버전 2에서는 클라이언트 측 호출기 프로그램을 출력에 사용합니다. 기본적으로 이 기능은 운영 체제의 기본 페이저 프로그램을 통해 모든 출력을 반환합니다.

우선 순위에 따라 다음과 같은 방법으로 출력 페이저를 지정할 수 있습니다.

  • default 또는 명명된 프로파일에서 config 파일의 cli_pager 설정 사용.

  • AWS_PAGER 환경 변수 사용.

  • PAGER 환경 변수 사용.

우선 순위에 따라 다음과 같은 방법으로 외부 페이징 프로그램의 모든 사용을 비활성화할 수 있습니다.

  • --no-cli-pager 명령줄 옵션을 사용하여 단일 명령 사용에 대해 페이저를 비활성화합니다.

  • cli_pager 설정 또는 AWS_PAGER 변수를 빈 문자열로 설정합니다.

클라이언트 측 페이저 주제:

cli_pager 설정을 사용하는 방법

AWS CLI에서 유지되는 파일에 자주 사용되는 구성 설정과 자격 증명을 저장할 수 있습니다. 이름 프로파일의 설정은 default 프로파일의 설정보다 우선합니다. 구성 설정에 대한 자세한 내용은 의 구성 및 보안 인증 파일 설정 AWS CLI 섹션을 참조하세요.

다음 예제에서는 기본 출력 페이저를 less 프로그램으로 설정합니다.

[default] cli_pager=less

다음 예제에서는 기본값을 설정하여 페이저 사용을 비활성화합니다.

[default] cli_pager=

AWS_PAGER 환경 변수를 설정하는 방법

다음 예제에서는 기본 출력 페이저를 less 프로그램으로 설정합니다. 환경 변수에 대한 자세한 내용은 에 대한 환경 변수 구성 AWS CLI 섹션을 참조하세요.

Linux and macOS
$ export AWS_PAGER="less"
Windows
C:\> setx AWS_PAGER "less"

--no-cli-pager 옵션을 사용하는 방법

단일 명령에서 페이저 사용을 비활성화하려면 --no-cli-pager 옵션을 사용합니다. 명령줄 옵션에 대한 자세한 내용은 의 명령줄 옵션 AWS CLI 섹션을 참조하세요.

$ aws s3api list-objects \ --bucket amzn-s3-demo-bucket \ --no-cli-pager { "Contents": [ ...

페이저 플래그를 사용하는 방법

페이징 프로그램에서 자동으로 사용할 플래그를 지정할 수 있습니다. 플래그는 사용하는 페이징 프로그램에 따라 다릅니다. 아래의 예제는 일반적인 기본값인 lessmore에 대한 것입니다.

Linux and macOS

달리 지정하지 않으면 호출기 AWS CLI 버전 2가 기본적으로 를 사용합니다less. LESS 환경 변수가 설정되지 않은 경우 AWS CLI 버전 2는 FRX 플래그를 사용합니다. AWS CLI 호출기를 설정할 때 플래그를 지정하여 플래그를 결합할 수 있습니다.

다음 예제에서는 S 플래그를 사용합니다. 그런 다음 이 플래그는 기본 FRX 플래그와 결합하여 최종 FRXS 플래그를 생성합니다.

$ export AWS_PAGER="less -S"

FRX 플래그를 원하지 않으면 해당 플래그를 무효화할 수 있습니다. 다음 예제에서는 F 플래그를 무효화하여 최종 RX 플래그를 생성합니다.

$ export AWS_PAGER="less -+F"

less 플래그에 대한 자세한 내용은 manpages.org에서 less를 참조하세요.

Windows

달리 지정하지 않으면 호출기 AWS CLI 버전 2가 기본적으로 를 사용하며 추가 플래그가 more 없습니다.

다음 예제에서는 /c 파라미터를 사용합니다.

C:\> setx AWS_PAGER "more /c"

more 플래그에 대한 자세한 내용은 Microsoft Docsmore의 섹션을 참조하세요.