Обсуждение: fied separator change from the shell command line
Hello, I'm trying to change the usal "|" table field separator from the shell command line: psql -d ect -f pl_lost.sql -o pl_lost.out.txt -F "\t" -U asaadmin But it doesn't work. It keeps the same "|" separator in the output file. Can anyone please help me? I need to output to a tab separated file. Can anynone hel me with this? Thanks in advance, PJO
paulo.oliveira@engineer.com writes: > Hello, > > I'm trying to change the usal "|" table field separator from the shell > command line: > psql -d ect -f pl_lost.sql -o pl_lost.out.txt -F "\t" -U asaadmin > > But it doesn't work. It keeps the same "|" separator in the output > file. > Can anyone please help me? > I need to output to a tab separated file. Can anynone hel me with this? > > Thanks in advance, Changing the field separator only works with unaligned output. You need to add a -A to your command line switches (or --no-align). Doing this, though, drops the column headers. -- Remove -42 for email
Edmund Bacon <ebacon-xlii@onesystem.com> writes:
> paulo.oliveira@engineer.com writes:
>> I'm trying to change the usal "|" table field separator from the shell
>> command line:
>> psql -d ect -f pl_lost.sql -o pl_lost.out.txt -F "\t" -U asaadmin
> Changing the field separator only works with unaligned output. You
> need to add a -A to your command line switches (or --no-align). Doing
> this, though, drops the column headers.
There's a bit of a documentation issue I think: the psql reference page
doesn't point out that -F only affects unaligned output. You could find
that out by consulting the crossreferenced description of \pset fieldsep,
but it seems better to mention it under -F too. I've changed the
documentation accordingly in CVS HEAD.
regards, tom lane