psqlでページャーが有効になっている場合

psqlコマンドでクエリを実行すると、結果が多い場合にページャーが有効になる。

例えば以下のように-cオプションで結果が多いクエリを実行する。

$ psql -d testdb -c "SELECT id FROM users;"
 id
-----
   8
   9
  10
  11
  12
  13
  14
  15
  16
  17
  18
  19
  20
  21
  22
  23
  24
  25
  26
:

以上のようにページャーが有効になっており、末尾に:が表示される。

psqlコマンドで直接SQLを実行する場合にページャーを無効にする

-cオプションで直接SQLを実行する場合は-P pager=offオプションを指定する。

$ psql -d testdb -c "SELECT id FROM users;" -P pager=off
 id
-----
   8
   9
  10
  11
  12
  13
  14
  15
  16
  17
  18
  19
(略)
 313
 314
 315
(308 rows)

ページャーが実行されず、最後の行まで表示される。

psqlプロンプトでページャーを無効にする

psqlコマンドでページャーを無効にするには\pset pager offを実行する。

$ psql -d testdb
testdb=# \pset pager off
Pager usage is off.
testdb=# SELECT id FROM users;
 id
-----
   8
   9
  10
  11
  12
  13
  14
  15
  16
  17
  18
  19
(略)
 313
 314
 315
(308 rows)

ページャーーが実行されず、最後の行まで表示される。