john(at)7fff(dot)com writes:
> copy bug(id) from program '$HOME/bug/data' csv header;
> It calls a script called data. I run it with psql -X -f
> $HOME/bug/setup.sql
> This works for the "data" script:
> #/bin/bash
> echo "id"
> echo "1"
> echo "2"
> This doesn't:
> #/bin/bash
> echo "id"
> echo "1"
> psql -X -t -q -c "select 2" | xargs
> I can't figure out if psql is disallowed from the program referenced by the
> copy program; or if somehow standard out is getting nuked.
I think you're getting messed up by the fact that the program will
be run by the server, ie, under the postgres user's login, not your
own login. Try capturing psql's stderr to see if it's printing a
cant-login type of message.
regards, tom lane