Rozwiązaniem roboczym, które mam teraz, jest utworzenie tymczasowego widoku, który można zadeklarować w wielu wierszach, a następnie wybierz z niego w \copy
polecenie, które wygodnie mieści się w jednej linii.
db=> CREATE TEMP VIEW v1 AS
db-> SELECT i
db-> FROM generate_series(1, 2) AS i;
CREATE VIEW
db=> \cd /path/to/a/really/deep/directory/structure/on/client
db=> \copy (SELECT * FROM v1) TO 'out.csv' csv header
COPY 2
db=> DROP VIEW v1;
DROP VIEW