我正在使用 putty 连接到 solaris 系统。
我只是一个用户(没有 root 访问权限)。我所知道的关于这个系统的全部信息是
Oracle 公司 SunOS 5.11 11.1 2014 年 1 月
我的问题来自键盘设置。按键insert/home/pageup/pagedown/end/delete
全部显示出来,~
而不是像 Ubuntu 中那样移动光标。
我已经尝试了很多在互联网上找到的技巧,但没有任何效果。
echo $TERM
给出了xterm
putty 与 xterm 的配置良好。
我不知道该怎么办。
答案1
要支持替代键映射,您可以使用 GNU readline 库的inputrc
init 文件。
.inputrc
每个用户都可以在其主目录中拥有自己的文件。或者使用 global/etc/inputrc
为所有用户设置。
要检查当前的键映射,请输入逐字模式 ( Ctrl-v
),然后输入要映射的键。这将阻止shell
解析和执行密钥并提供密钥序列。
例如
Ctrl-v Home
^[[1~
序列^[
相当于[Esc]
键,因此需要映射为e\
。
要测试新地图,请使用以下bind
命令:
bind '"\e[1~": beginning-of-line'
一旦成功,您可以将该bind
命令添加到您的 shell 配置文件中,或者将所有映射添加到您的.inputrc
文件中。
为了Debian / 乌布努图基于键映射,将以下内容添加到您的个人~/.inputrc
文件中:
# for linux console and RH/Debian xterm
set meta-flag on
set input-meta on
set convert-meta off
set output-meta on
"\e[1~": beginning-of-line
"\e[4~": end-of-line
# commented out keymappings for pgup/pgdown to reach begin/end of history
#"\e[5~": beginning-of-history
#"\e[6~": end-of-history
"\e[5~": history-search-backward
"\e[6~": history-search-forward
"\e[3~": delete-char
"\e[2~": quoted-insert
"\e[5C": forward-word
"\e[5D": backward-word
"\e[1;5C": forward-word
"\e[1;5D": backward-word
然后再次登录或启动新的 shell。