A conclusão da tabulação não funciona sobre o SSH

2

Eu configurei um repositório git na minha máquina Ubuntu como um servidor, que está em uma rede doméstica. Então eu SSH para este repositório no mesmo computador ou de outro computador doméstico. Login está bem. No entanto, quando eu digito um arquivo parcial ou nome de diretório no terminal, então pressione guia , o cursor se move para a direita no terminal, sem trazer o nome completo do arquivo ou diretório como normalmente. / p>

Depois que eu saio do servidor SSH, a tecla tab funciona normalmente.

Editar:

Além disso, o & amp; rightarrow; , & amp; leftarrow; , & amp; uparrow; e & downarrow; As teclas / kbd> não funcionam. Quando eu pressiono qualquer um desses, eu os recebo no terminal:

$ ^[[A^[[D^[[C^[[A

Qual poderia ser o motivo?

Adicionar:

$ env

MAIL=/var/mail/git
USER=git
SSH_CLIENT=10.0.0.250 42342 2222
J2SDKDIR=/usr/lib/jvm/java-8-oracle
J2REDIR=/usr/lib/jvm/java-8-oracle/jre
HOME=/home/git
SSH_TTY=/dev/pts/5
LOGNAME=git
TERM=xterm-256color
XDG_SESSION_ID=93
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/usr/lib/jvm/java-8-oracle/bin:/usr/lib/jvm/java-8-oracle/db/bin:/usr/lib/jvm/java-8-oracle/jre/bin
DERBY_HOME=/usr/lib/jvm/java-8-oracle/db
XDG_RUNTIME_DIR=/run/user/1001
LANG=en_US.UTF-8
SHELL=/bin/sh
PWD=/home/git
JAVA_HOME=/usr/lib/jvm/java-8-oracle
SSH_CONNECTION=10.0.0.250 42342 10.0.0.250 2222
    
por martin 30.10.2017 / 08:22

1 resposta

6

Seu shell atual é o problema. Você está usando sh como o shell padrão, conforme mostrado na saída do comando env :

SHELL=/bin/sh

Para corrigir seu problema, você precisa mudar para outro shell que suporte essas entradas principais (como bash , que eu usarei como exemplo). Para fazer isso, você precisará usar o utilitário chsh (shell de alteração).

Exemplo:

$ which bash
  /bin/bash
$ chsh -c /bin/bash 

Isso atualizará o ambiente de shell padrão do seu usuário (veja mais aqui sobre o uso completo). Você precisará fazer logout / login ou iniciar uma nova sessão para carregar no novo shell.

Como alternativa, você pode utilizar outro shell localizando seu caminho e executando a partir do seu shell atual. Como exemplo, aqui estou eu mudando de sh para bash :

$ which bash
  /bin/bash
$ /bin/bash

chris@loki:~$ 

Espero que isso ajude!

    
por The Pizza Overlord 30.10.2017 / 13:32