Por que o zsh se comporta como menos ao consultar um banco de dados (postgresql)?

2

Contexto

  • zsh shell,
  • oh-my-zsh framework,
  • não há configuração especial do zsh sobre postgresql .

Problema

Eu notei um comportamento irritante: ao consultar o banco de dados, por exemplo:

SELECT * FROM mytable ;

ele se comporta como less (com (END) ) e voltar precisa "fechar" o less (com q atalho) o que significa que não consigo ler o resultado de uma consulta anterior ao digitar o próximo .

Pelo contrário, bash não tem esse comportamento: depois de uma consulta, o resultado é exibido e é possível digitar a próxima consulta.

Pergunta

Como posso personalizar o zsh para que ele se comporte como bash a esse respeito?

    
por Denis Bitouzé 04.11.2016 / 20:45

1 resposta

2

É possível que seu shell esteja configurando a variável de ambiente PAGER .

Tente desativá-lo antes de executar o psql:

user@host% unset PAGER

Você também pode tentar configurar o valor pset do pager para "off" como este no shell postgresql:

user=> \pset pager off

Isso ativará ou desativará o uso do pager. Você também pode configurá-lo para usar um pager específico (como more , less , cat , etc.).

Mais informações na página do manual do psql:

pager

    Controls use of a pager for query and psql help output. If the
environment variable PAGER is set, the output is piped to the
specified program. Otherwise a platform-dependent default (such as
more) is used.

    When the pager is off, the pager is not used. When the pager is on,
the pager is used only when appropriate, i.e. the output is to a
terminal and will not fit on the screen. (psql does not do a perfect
job of estimating when to use the pager.) \pset pager turns the pager
on and off. Pager can also be set to always, which causes the pager to
be always used.
    
por 04.11.2016 / 21:00