getting list of tables from command line

From: Craig White <craigwhite(at)azapple(dot)com>
To: pgsql-general(at)postgresql(dot)org
Subject: getting list of tables from command line
Date: 2007-10-31 15:01:41
Message-ID: 1193842901.27416.53.camel@lin-workstation.azapple.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

I wrote a little script to individually back up table schemas, table
data and then vacuum the table and it works nicely but I wanted a way to
query a database and get a text file with just the table names and
cannot figure out a way to do that.

my script looks like this...
(all I want is to get a list of the tables into a text file pg_tables)

#/bin/sh
#
DB_NAME=whatever
#
for i in `cat pg_tables`
do
pg_dump --username=postgres \
--schema=db
--table=$i \
--schema-only \
$DB_NAME > schemas/$i.sql
pg_dump --username=postgres \
--schema=db \
--table=$i \
--data-only \
$DB_NAME > data/$i.sql
vacuumdb --username=postgres \
--dbname=$DB_NAME \
--table=db.$i \
--verbose \
--full
done

Is there a way to do that?

Craig

PS there's a lack of cohesion between various commands such as vacuumdb
and pg_dump for things like '--schema'

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Andreas Kretschmer 2007-10-31 15:07:15 Re: active connections
Previous Message Luca Ferrari 2007-10-31 14:42:40 Re: Join between tables of two or more databases