mar*_*tin 12 ssh command-line keyboard
我在我的 Ubuntu 机器上设置了一个 git 存储库作为服务器,它位于家庭网络上。然后我在同一台计算机上或从另一台家用计算机通过 SSH 连接到这个存储库。登录没问题。但是,当我在终端上键入部分文件或目录名称时,然后按tab,光标会在终端上向右移动,而不会像往常一样显示完整的文件或目录名称。
从SSH服务器退出后,tab密钥正常工作。
编辑:
此外,→,←,↑和↓键不起作用。当我按下其中任何一个时,我会在终端上得到这些:
$ ^[[A^[[D^[[C^[[A
Run Code Online (Sandbox Code Playgroud)
可能是什么原因?
添加:
$环境
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
Run Code Online (Sandbox Code Playgroud)
小智 12
您当前的外壳是问题所在。您当前使用的sh是默认 shell,如您的env命令输出所示:
SHELL=/bin/sh
要解决您的问题,您需要更改为另一个支持这些键输入的 shell(例如bash,我将以此为例)。为此,您需要使用该chsh实用程序(更改 shell)。
例子:
$ which bash
/bin/bash
$ chsh -c /bin/bash
Run Code Online (Sandbox Code Playgroud)
这将为您的用户更新默认的 shell 环境(有关完整使用的更多信息,请参阅此处)。您需要注销/登录或启动新会话以加载到新 shell。
或者,您可以通过定位其路径并从当前 shell 运行来使用另一个 shell。例如,这里是我从 更改sh为bash:
$ which bash
/bin/bash
$ /bin/bash
chris@loki:~$
Run Code Online (Sandbox Code Playgroud)
希望这可以帮助!