On 03/02/2016 09:06 AM, Mark E. Haase wrote:
I can `SET search_path TO "$user",foo,bar,public` and the first path
element will expand to the current user.

Can I do the same for `pg_dump -n`? I've tried many variations but none
of them appear to work:

     pg_dump -U myuser -n '($user|foo|bar|public)' ...
     pg_dump -U myuser -n '("$user"|foo|bar|public)' ...
     pg_dump -U myuser -n '(\$user|foo|bar|public)' ...

I can't tell if I'm doing something wrong or if $user expansion is just
some magic in SET that doesn't exist in pg_dump or `\dn`.

(The workaround is obvious, of course: replace $user with the value of
the -U argument . This is a question of curiosity, not practicality.)

Also, is there any difference between `pg_dump -n '(foo|bar)'` and
`pg_dump -n foo -n bar`? In my narrow testing, they produce identical
results.

Not as far I can see:

http://www.postgresql.org/docs/9.5/interactive/app-pgdump.html#PG-DUMP-EXAMPLES

To dump all schemas whose names start with east or west and end in gsm, excluding any schemas whose names contain the word test:

$ pg_dump -n 'east*gsm' -n 'west*gsm' -N '*test*' mydb > db.sql

The same, using regular expression notation to consolidate the switches:

$ pg_dump -n '(east|west)*gsm' -N '*test*' mydb > db.sql


Thanks,

--
Mark E. Haase


--
Adrian Klaver
adrian.kla...@aklaver.com


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

Reply via email to