shell postgres continua escondendo as informações

shell postgres continua escondendo as informações

Ao usar psql, \d <table>ou select * from XXXX, depois de sair e voltar para o shell, a informação não está lá e preciso executar o próximo comando o tempo todo. Isso é muito chato. Existe alguma maneira de saber psqlsempre exibir o que acabei de consultar e deixar na tela?

Responder1

Se as informações desaparecerem quando você sair do pager e você não quiser que isso aconteça, altere as configurações do pager. Você provavelmente está usando lesscomo pager por padrão. A opção mais simples é desabilitar a paginação:

\pset pager off

portanto, os resultados saem diretamente do terminal. Você desejará definir um buffer de rolagem um pouco maior em seu programa de terminal se fizer isso.

Como alternativa, configure a PAGERvariável de ambiente para algo que não restaure a exibição na saída do pager, por exemplo:

export PAGER="less -X"

Você também pode definir um pager personalizado no seu .psqlrcse quiser que ele afete apenas o psql.

Responder2

Essefioparece relevante (parafraseando):

The pager is probably not set, see here for more info:

http://www.postgresql.org/docs/9.2/interactive/app-psql.html

pager

Controla o uso de um programa de pager para consulta e saída de ajuda do psql. Se a variável de ambiente PAGER estiver definida, a saída será canalizada para o programa especificado. Caso contrário, um padrão dependente da plataforma (como more) será usado.

Quando a opção pager está desativada, o programa pager não é usado. Quando a opção pager está ativada, o pager é usado quando apropriado, ou seja, quando a saída é para um terminal e não cabe na tela. A opção pager também pode ser definida como sempre, o que faz com que o pager seja usado para todas as saídas do terminal, independentemente de caber na tela. \pset pager sem valor ativa e desativa o uso do pager.

informação relacionada