Como habilitar o histórico de comandos de seta para cima e a conclusão de comandos no sftp no Gentoo?

2

Quando tento usar o histórico de comandos up-arrow via sftp para o meu servidor CentOS 7, ele apenas imprime caracteres ASCII na saída, em vez de recuperar comandos recentes:

sftp> ^[[A

É muito demorado e chato ter que redigitar comandos o tempo todo. Existe também uma maneira de ativar algo semelhante ao bash-completion?

    
por Az Garda 02.09.2018 / 20:06

1 resposta

2

Crédito para @ steeldriver que apontou libedit é necessário. Então, foi simplesmente uma questão de adicionar o libedit USE flag para o portage. Eu adicionei localmente como:

# /etc/portage/package.use
>=net-misc/openssh-7.7_p1-r9 libedit

E depois reconstruímos o OpenSSH:

$ emerge -av net-misc/openssh

Além disso , isso exige que bash-completion esteja instalado e ativado para sftp .

Instalar a conclusão do bash:

$ sudo emerge --ask app-shells/bash-completion

Você pode verificar se o bash-completion está habilitado para o sftp assim:

$ eselect bashcomp list | grep ftp

Qual deve retornar algo como:

  [337] lftp *
  [338] lftpget *
  [451] ncftp *
  [633] sftp *

O asterisco à direita confirma que o bash-completion está habilitado para o sftp, (e neste caso, vários outros utilitários ftp também).

    
por 07.09.2018 / 17:04