Disable wrapping in Psql output
When using Psql in Linux, if the result of my SQL query contains many columns or long strings of data, it will wrap the initial view and only once I scroll to the side will it stop wrapping and show each row on a separate line.
I've tried various \pset
options such as format unaligned
, format aligned
, format wrapped
, columns 0
, columns 1000
, but none seemed to fully stop wrapping unless I generate static output to a file.
How can I set it to never wrap the output while still being scrollable and showing the result using the default ascii table format?
Solution 1:
Psql
uses a system viewer to show its output in the console. In bash
it likely uses less
for the scrollable/page-able features it provides. To use a different viewer or use different settings, you just need to set the PAGER
environment variable.
Running psql
to use less
with the -S
or --chop-long-lines
option seemed to work for me:
PAGER="less -S" psql
You can also enable this feature while viewing output in less
by typing -S
and Enter.
Solution 2:
To disable the wrapped output of the select query.
\pset pager on and \pset pager off to switch back to the older output view.
Solution 3:
less's -F
or -S
flag will causes \d some_table
to not show any output in some cases.
-F or --quit-if-one-screen
Causes less to automatically exit if the entire file can be
displayed on the first screen.
-S or --chop-long-lines
Causes lines longer than the screen width to be chopped rather than folded.
That is, the portion of a long line that does not fit in the screen width is
not shown. The default is to fold long lines; that is, display the remainder
on the next line.
Use them like this:
PAGER="less -S" psql
Seems safer at the inconvenience of having to manually exit less.
Solution 4:
probably you should use aligned
format for output:
\pset format aligned
You can check all available formats to fit your needs:
\pset format TAB
aligned html latex-longtable unaligned
asciidoc latex troff-ms wrapped
Also you should check PAGER
configured value in your environment