Menggunakan opsi pagination di AWS CLI - AWS Command Line Interface

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Menggunakan opsi pagination di AWS CLI

Topik ini menjelaskan berbagai cara untuk melakukan paginasi output dari. AWS CLI

Terutama ada dua cara untuk mengontrol pagination dari. AWS CLI

Parameter pagination sisi server diproses terlebih dahulu dan output apa pun dikirim ke pagination sisi klien.

Pagination sisi server

Untuk perintah yang dapat mengembalikan daftar item yang besar, AWS Command Line Interface (AWS CLI) memiliki beberapa opsi untuk mengontrol jumlah item yang disertakan dalam output saat AWS CLI panggilan layanan API untuk mengisi daftar.

Secara default, AWS CLI menggunakan ukuran halaman yang ditentukan oleh layanan individu dan mengambil semua item yang tersedia. Misalnya, Amazon S3 memiliki ukuran halaman default 1000. Jika Anda menjalankan aws s3api list-objects bucket Amazon S3 yang berisi 3.500 objek, AWS CLI secara otomatis membuat empat panggilan ke Amazon S3, menangani logika pagination khusus layanan untuk Anda di latar belakang dan mengembalikan semua 3.500 objek di output akhir.

Cara menggunakan parameter --no-paginate

--no-paginateOpsi ini menonaktifkan token pagination berikut di sisi klien. Saat menggunakan perintah, secara default AWS CLI secara otomatis membuat beberapa panggilan untuk mengembalikan semua hasil yang mungkin untuk membuat pagination. Satu panggilan untuk setiap halaman. Menonaktifkan pagination memiliki AWS CLI satu-satunya panggilan sekali untuk halaman pertama hasil perintah.

Misalnya, jika Anda menjalankan aws s3api list-objects bucket Amazon S3 yang berisi 3.500 objek, AWS CLI satu-satunya yang membuat panggilan pertama ke Amazon S3, hanya mengembalikan 1.000 objek pertama dalam output akhir.

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

Cara menggunakan parameter --page-size

Jika Anda melihat masalah saat menjalankan perintah daftar pada sejumlah besar sumber daya, ukuran halaman default mungkin terlalu tinggi. Hal ini dapat menyebabkan panggilan ke AWS layanan melebihi waktu maksimum yang diizinkan dan menghasilkan kesalahan “waktu habis”. Anda dapat menggunakan --page-size opsi untuk menentukan bahwa AWS CLI permintaan sejumlah kecil item dari setiap panggilan ke AWS layanan. AWS CLI Masih mengambil daftar lengkap, tetapi melakukan lebih banyak API panggilan layanan di latar belakang dan mengambil sejumlah kecil item dengan setiap panggilan. Ini memberi panggilan individu kesempatan yang lebih baik untuk berhasil tanpa batas waktu. Mengubah ukuran halaman tidak mempengaruhi output; itu hanya mempengaruhi jumlah API panggilan yang perlu dilakukan untuk menghasilkan output.

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

Cara menggunakan parameter --max-items

Untuk memasukkan lebih sedikit item sekaligus dalam AWS CLI output, gunakan --max-items opsi. AWS CLI Masih menangani pagination dengan layanan seperti yang dijelaskan sebelumnya, tetapi hanya mencetak jumlah item pada waktu yang Anda tentukan.

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

Cara menggunakan parameter --starting-token

Jika jumlah item output (--max-items) lebih sedikit dari jumlah total item yang dikembalikan oleh API panggilan yang mendasarinya, output termasuk NextToken yang dapat Anda teruskan ke perintah berikutnya untuk mengambil set item berikutnya. Contoh berikut menunjukkan bagaimana menggunakan NextToken nilai yang dikembalikan oleh contoh sebelumnya, dan memungkinkan Anda untuk mengambil 100 item kedua.

catatan

Parameter --starting-token tidak bisa nol atau kosong. Jika perintah sebelumnya tidak mengembalikan NextToken nilai, tidak ada lagi item untuk dikembalikan dan Anda tidak perlu memanggil perintah lagi.

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

AWS Layanan yang ditentukan mungkin tidak mengembalikan item dalam urutan yang sama setiap kali Anda menelepon. Jika Anda menentukan nilai yang berbeda untuk --page-size dan--max-items, Anda bisa mendapatkan hasil yang tidak terduga dengan item yang hilang atau digandakan. Untuk mencegah hal ini, gunakan nomor yang sama untuk --page-size dan --max-items untuk menyinkronkan AWS CLI pagination dengan pagination dari layanan yang mendasarinya. Anda juga dapat mengambil seluruh daftar dan melakukan operasi paging yang diperlukan secara lokal.

Pager sisi klien

AWS CLI versi 2 menyediakan penggunaan program pager sisi klien untuk output. Secara default, fitur ini mengembalikan semua output melalui program pager default sistem operasi Anda.

Dalam urutan prioritas, Anda dapat menentukan pager output dengan cara berikut:

  • Menggunakan cli_pager pengaturan dalam config file di profil default atau bernama.

  • Menggunakan variabel AWS_PAGER lingkungan.

  • Menggunakan variabel PAGER lingkungan.

Dalam urutan prioritas, Anda dapat menonaktifkan semua penggunaan program paging eksternal dengan cara berikut:

  • Gunakan opsi baris --no-cli-pager perintah untuk menonaktifkan pager untuk penggunaan perintah tunggal.

  • Atur cli_pager pengaturan atau AWS_PAGER variabel ke string kosong.

Cara menggunakan pengaturan cli_pager

Anda dapat menyimpan pengaturan konfigurasi dan kredensional yang sering digunakan dalam file yang dikelola oleh file. AWS CLI Pengaturan di profil nama lebih diutamakan daripada pengaturan di profil. default Untuk informasi selengkapnya tentang pengaturan konfigurasi, lihatKonfigurasi dan pengaturan file kredensi di AWS CLI.

Contoh berikut menetapkan default output pager untuk less program.

[default] cli_pager=less

Contoh berikut menetapkan default untuk menonaktifkan penggunaan pager.

[default] cli_pager=

Cara mengatur variabel AWS_PAGER lingkungan

Contoh berikut menetapkan default output pager untuk less program. Untuk informasi lebih lanjut tentang variabel lingkungan, lihatMengkonfigurasi variabel lingkungan untuk AWS CLI.

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

Cara menggunakan no-cli-pager opsi --

Untuk menonaktifkan penggunaan pager pada satu perintah, gunakan --no-cli-pager opsi. Untuk informasi selengkapnya tentang opsi baris perintah, lihatOpsi baris perintah di AWS CLI.

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

Cara menggunakan bendera pager

Anda dapat menentukan bendera untuk digunakan secara otomatis dengan program paging Anda. Bendera tergantung pada program paging yang Anda gunakan. Contoh di bawah ini adalah untuk default khas dan. less more

Linux and macOS

Jika Anda tidak menentukan sebaliknya, pager AWS CLI versi 2 menggunakan secara default adalahless. Jika Anda tidak memiliki variabel LESS lingkungan yang disetel, AWS CLI versi 2 menggunakan FRX bendera. Anda dapat menggabungkan bendera dengan menentukannya saat mengatur pager. AWS CLI

Contoh berikut menggunakan S bendera. Bendera ini kemudian digabungkan dengan FRX bendera default untuk membuat FRXS bendera akhir.

$ export AWS_PAGER="less -S"

Jika Anda tidak menginginkan FRX bendera apa pun, Anda dapat meniadakannya. Contoh berikut meniadakan F bendera untuk membuat RX bendera akhir.

$ export AWS_PAGER="less -+F"

Untuk informasi lebih lanjut tentang less bendera, lihat lebih sedikit di manpages.org.

Windows

Jika Anda tidak menentukan sebaliknya, pager AWS CLI versi 2 yang digunakan secara default adalah more tanpa tanda tambahan.

Contoh berikut menggunakan /c parameter.

C:\> setx AWS_PAGER "more /c"

Untuk informasi selengkapnya tentang more flag, lihat more di Microsoft Docs.