Thread: 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