Search Postgresql Archives

Re: databases list to file

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



postgres Emanuel CALVO FRANCO wrote:
inside psql turn \o file
then \l




I need to print to a file a simple list of all the databases on my
postgresql.

I need to do this from a shell script to be executed without human
intervention...
...
but I don't know exactly to what extent I can format the output of this
in order to simplify the parser that will read that file.

psql -tc 'select datname from pg_database' template1


psql ...connection options... --no-align --tuples-only -l
steve|steve|UTF8
foo|steve|UTF8
template0|postgres|UTF8
template1|postgres|UTF8

If you only want the names and use the query suggested above, you can add "where not datistemplate" to eliminate template0 and template1 from your list.

You can format at will in-line using heredoc format:
psql <<EOS | your_output_parser
\pset format unaligned
\pset tuples_only
\pset fieldsep '\t'
...
select ...
EOS

(Note: in scripts I usually run psql with the --no-psqlrc option and set the options myself so the script will be portable regardless of the contents of the .psqlrc file).

Use the -E option to psql to see the queries it runs behind-the-scenes in response to the various \l, \d, etc. commands then modify the query to suit.

Cheers,
Steve


--
Sent via pgsql-general mailing list (pgsql-general@xxxxxxxxxxxxxx)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux