Я использую Ubunutu. Я просто хочу создать дамп postgre. Итак, я использую следующую команду:
sudo -u wap PGPASSWORD="postgres" pg_dump -h localhost -U postgres -d n26n -n public -FC -f /tmp/dump_file --verbose
Вышеупомянутое создает дамп, как и ожидалось. Однако, поскольку я запускаю его в подробном режиме, я хочу, чтобы вывод регистрировался в файле. Я пробовал следующее:
sudo -u wap PGPASSWORD="postgres" pg_dump -h localhost -U postgres -d n26n -n public -FC -f /tmp/dump_file --verbose >> logfile
Файл журнала кажется пустым.
Как указать конец команды?
Без образца вывода, который вы получаете, я могу только строить предположения, но ваша команда содержит -f (--file)
, куда направляется ваш вывод дампа: / home / me / dump_file
.
-f файл
Отправить вывод в указанный файл. Этот параметр можно опустить для файловых форматов вывода, и в этом случае используется стандартный вывод. Однако он должен быть указан для формата вывода каталога, где он указывает целевой каталог вместо файла. В этом случае каталог создается
pg_dump
и не должен существовать раньше.
Любой другой вывод будет из stderr
, потому что вы указали - verbose
поэтому вы должны перенаправить этот вывод, используя 2> logfile1
.
- verbose
Задает подробный режим. Это заставит
pg_dump
выводить подробные комментарии к объекту и время запуска / остановки в файл дампа, а также сообщения о ходе выполнения в виде стандартной ошибки.
Пример:
sudo -u wap PGPASSWORD="postgres" \
pg_dump -h localhost -U postgres \
-d n26n -n public -Fc -f /tmp/dump_file --verbose 2> logfile1