no shell SQLite (CLI) como terminar a entrada da instrução após ^]] A?

1

confessando, isso não é específico do ubuntu, mas específico do shell do SQLite. De qualquer forma, talvez um de vocês saiba alguma dica. Eu sou um iniciante do Linux btw ...

Estou digitando com o SQLite e usando seu shell, acidentalmente digitando a tecla de seta para cima. infelizmente não há nenhuma funcionalidade readline de histórico ligada a ele, e não, eu não posso mudar isso. A entrada do shell está esperando por alguma linha de chegada identificada, mas provavelmente está em algum modo especial de escape ... então minha sessão de shell deve perecer pressionando Ctrl + Z . Qualquer outra chave que eu tentei não mudou nada.

Alguém tem uma dica? Esse comportamento pode ser alterado de modo que, ao pressionar as teclas "especiais" de um teclado padrão, simplesmente não faça nada?

    
por Fred Erik 19.06.2013 / 12:19

2 respostas

0

se Ctrl + Z não estiver funcionando, você pode usar o comando: -

sqlite> .exit

Para mais informações use: -

sqlite> .help
    
por Gaurav Sharma 19.06.2013 / 13:38
0

Aparentemente, esse comportamento é conhecido e "intencional" . Ele se comporta assim porque os desenvolvedores de sqlite não querem tornar o sqlite dependente da readline (a biblioteca que fornece a funcionalidade de seta para o shell) porque não está em todas as distribuições GNU / Linux. E, portanto, eles não distribuem o binário, incluindo os recursos readline.

Para ter um shell sqlite mais padrão, você terá que construir o sqlite a partir do código-fonte. Não é tão difícil, basta executar esses comandos dentro de um diretório temporal:
apt-get source sqlite3 cd sqlite3-* ./configure make sudo make install
Depois disso, você deve poder entrar na sua própria versão digitando sqlite3 .

Mais informações aqui .

Quanto ao "comando exit", Ctrl + Z na verdade pausa o programa que está sendo executado e o envia em segundo plano . Se você quiser sair do shell sqlite, você deve usar Ctrl + D

    
por Akronix 04.07.2017 / 17:10