问题:使用securecrt ssh到linux之后,backspace(退格键),delete(删除键),以及4个方向键都为乱码,不能正常使用。按tab键也没有自动补全文件名。
即:
按Backspace(退格键)和delete(删除键)屏幕显示的是:
^H
按方向键则屏幕显示的是:^[[A^[[B^[[C^[[D
环境: SecureCRT8.1.4 (build 1443)、 Ubuntu 16.04.2 LTS
解决方法:
1. 解决backspace(退格键)和delete(删除键)的乱码问题:
在SecureCRT的 工具栏–>选项(options)–>会话选项(CRTsession)–>终端(terminal)–>仿真(emulation)–>映射键(mapped keys)页面,勾选“其他映射(other mappings)”的两个选项,如下图:
2. 解决方向键乱码和tab键不能自动补全的问题:
输入 echo $0 查看linux当前的shell环境,如果显示如下:
-sh
则说明我们当前用的是sh
环境,这是因为在创建用户时没有指定环境,默认为sh shell。
所以我们以后在创建用户的时候应该用这个命令:
useradd -d /home/abc abc -m -s /bin/bash -s代表指定一个shell(这个bash shell更舒服更漂亮些)
useradd -d /home/abc abc -m -s /bin/sh -s代表指定一个shell(默认sh shell)一般不用这个。
当然,我们也可以直接将当前用户的shell环境改为 /bin/bash
sudo vi /etc/passwd
保存并退出,然后再重新登录,此时方向键正常,tab键补全功能也生效。