Мне нужно выполнить несколько операторов PSQL в блоке, как показано ниже.Здесь я использую «\ o» для перенаправления вывода запроса в «logfile».
Но «\ o» только перенаправляет вывод запроса, в него не входит сообщение об ошибке, если произошла какая-либо ошибка.
Например: если я введу неверное имя db_name, на экране появится сообщение об ошибке «ОШИБКА: имя_базы_данных не существует».Но эта ошибка не сохраняется в данном лог-файле.
Есть ли способ сохранить ошибки в том же лог-файле, где сохраняется другой вывод.
psql -p 5432 -U postgres -h ${db_host} << eof1
\set ON_ERROR_STOP TRUE
\o | cat >> ${logfile}
\l+ db_name;
select pg_database_size('db_name');
\o
eof1