Добавить в существующий файл без перезаписи с помощью команды psql \ o - PullRequest
0 голосов
/ 27 ноября 2018

Я подключен к своей базе данных (т. Е. Анализу) с помощью psql, и оттуда я знаю, что могу:

\o 'C/MYDIRECTORIES/test.csv'
SELECT * FROM test;
SELECT * FROM test;

Я могу непрерывно добавлять содержимое в этот файл test.csv до тех пор, пока не выполню \o снова, чтобы выйти из экспорта.

Однако, через некоторое время, если я захочу добавить новые вещи в этот test.csv и если я снова сделаю \o 'C/MYDIRECTORIES/test.csv', test.csv будет сначала уничтожен.Другими словами, я потерял ранее сохраненный контент.

Я провел поиск в Интернете, нашел эту ссылку (https://www.endpoint.com/blog/2010/03/22/using-o-to-append-to-file). Она предлагает решение моего вопроса. Однако, когда я выполнил предложенную команду:

\o | cat - >> 'C/MYDIRECTORIES/test.csv'

выскакивает ошибка вроде: Имя файла, имя каталога или синтаксис метки тома неверны. Я дважды проверил свой путь, и он правильный. Может кто-нибудь помочь взглянуть на эту проблему?

1 Ответ

0 голосов
/ 27 ноября 2018

Проблема в том, что эта команда для UNIX, и вы, похоже, используете Windows.

Вы можете попытаться найти замену, которая работает в Windows, но это, как известно, сложно, если вы не хотите написатьcmd скрипт, который сделает это за вас.

Я попробую здесь, но у меня нет Windows поблизости, так что это предположение, и вам придется отлаживать его:

\o | CMD /D /C TYPE CON >> 'C:\\MYDIRECTORIES\\test.csv'
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...