Export data from PostgreSQL to CSV via command line on Linux

by

Want to export PostgreSQL data to CSV file via command line on Linux (Ubuntu/RedHat/CentOS…)?

Using pg-cmd, a Command-Line client for PostgreSQL, you can unload PostgreSQL data to CSV/TSV/TXT easily and fast.

Support Windows, Linux, and MacOS.

Download pg-cmd Linux version Download pg-cmd

No need to install PostgreSQL client library.

Convenient to deploy to cloud. No need to run installation file, just uncompress and run, immediately.

Export PostgreSQL data to CSV/TSV/TXT via command line on Linux

1. Unload Table.

1) In interactive mode:

pg-cmd> unload
      > table=media_messages 
      > datafile=/data/media_messages.csv 
      > delimiter=, 
      > quote=" 
      > header=y;

2) In batch mode:

pg-cmd dsn="pan:withdata@192.168.0.102/test" task=unload table=media_messages datafile=/data/media_messages.csv delimiter=, quote=" header=y quit=y

2. Unload Query.

1) In interactive mode:

pg-cmd> unload
      > query="select * from media_messages where id > 100"
      > datafile=/data/media_messages.csv 
      > delimiter=, 
      > quote=" 
      > header=y;

2) In batch mode:

pg-cmd dsn="pan:withdata@192.168.0.102/test" task=unload query="select * from media_messages where id > 100" datafile=/data/media_messages.csv delimiter=, quote=" header=y quit=y

3. Unload All Tables.

1) In interactive mode:

pg-cmd> unload
      > table=all 
      > folder=/data/tables_data
      > delimiter=, 
      > quote=" 
      > header=y;

2) In batch mode:

pg-cmd dsn="pan:withdata@192.168.0.102/test" task=unload table=all folder=/data/tables_data delimiter=, quote=" header=y quit=y

See parameters detail.


More about pg-cmdCommand-Line client for PostgreSQL