From: Tena Sakai <tsakai@gallo.ucsf.edu>
To: Greg Smith <greg@2ndquadrant.com>
Cc: Gabriele Bartolini <gabriele.bartolini@2ndQuadrant.it>
Cc: pgsql-admin@postgresql.org <pgsql-admin@postgresql.org>
Subject: Re: What is field separator?
Date: Mon, 31 May 2010 22:27:59 -0700
Message-ID: <C829E86F.AF42%tsakai@gallo.ucsf.edu> (raw)
In-Reply-To: <4C04798D.70606@2ndquadrant.com>
Many thanks, Greg!
I got it to work by emulating what you wrote.
But I think you meant -A, not -At below.
>> psql -c "select name,setting from pg_settings limit 1" -d postgres -At
>> -F $'\t'
Regards,
Tena Sakai
tsakai@gallo.ucsf.edu
On 5/31/10 8:07 PM, "Greg Smith" <greg@2ndquadrant.com> wrote:
> Tena Sakai wrote:
>> $ echo "select marker, p, afreq from gallo.fbat_sdsdecode limit 10" | \
>>> psql -P 'format=unaligned' -P 'fieldsep=\t' -t -f - musket
>> What's denoted as \t is not a tab character. It is a two character
>> sequence backslash followd by a t. I have tried all other possibilities
>> such as \\t , "\t", etc that I can think of, but I cannot get an honest to
>> god tab character to appear as field separator.
>
> Yeah, that's a tough one. In bash you can use ANSI C quoting to pull
> this off:
>
> psql -c "select name,setting from pg_settings limit 1" -d postgres -At
> -F $'\t'
>
> See http://wiki.bash-hackers.org/syntax/quoting for more information.
> Portability to other shells I'm not sure about.
>
> Note that I did two other things a little differently than your example,
> as well as tightening up the abbreviations:
>
> -Putting the command in -c " " is just better all around than piping
> into psql using echo. It even works with multi-line input, i.e.:
>
> psql -c "
> select 1
> "
>
> -Explicitly specifying the database manually using -d makes what's
> happening easier to follow than expecting people to know the convention
> that the first non-option passed to psql is a database name.
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-admin@postgresql.org
Cc: tsakai@gallo.ucsf.edu, greg@2ndquadrant.com, gabriele.bartolini@2ndQuadrant.it
Subject: Re: What is field separator?
In-Reply-To: <C829E86F.AF42%tsakai@gallo.ucsf.edu>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox