from:http://linux.chinaunix.net/techdoc/system/2007/11/23/973027.shtml
在使用linux/unix的命令行终端时,有时候会碰到键盘的退格键、删除键、Home键、方向键等不听使唤的现象:
    按Backspace键,可能冒出来个^?
    按Delete键,却出来个^[[3~
    按Home键,却出来个^[[1~
    按向左箭头键,却出来个^[[D
    ……   
以下是在大多数shell终端都可以使用的快捷键,可以解决上述光标及字符删除等控制功能。
── 曾尝试使用stty解决Home键等问题,未果(可参考:http://www.ifpubs.com/books/aix52/stty0.htm)
注:如果使用图形环境的伪终端(如gnome-terminal),以下有可能和窗口程序的一部分快捷键产生冲突。
****************************************************************************************************
常用的快捷键:
Ctrl + d        删除一个字符,相当于通常的Delete键(命令行若无任何字符,则相当于exit;处理多行标准输入时也表示eof)
Ctrl + h        退格删除一个字符,相当于通常的Backspace键
Ctrl + u        删除光标之前到行首的字符
Ctrl + k        删除光标之前到行尾的字符
Ctrl + c        取消当前行输入的命令,相当于Ctrl + Break
Ctrl + a        光标移动到行首(Ahead of line),相当于通常的Home键
Ctrl + e        光标移动到行尾(End of line)
Ctrl + f        光标向前(Forward)移动一个字符位置
Ctrl + b        光标往回(Backward)移动一个字符位置
Ctrl + l        清屏,相当于执行clear命令
Ctrl + p        调出命令历史中的前一条(Previous)命令,相当于通常的上箭头
Ctrl + n        调出命令历史中的下一条(Next)命令,相当于通常的上箭头
Ctrl + r        显示:号提示,根据用户输入查找相关历史命令(reverse-i-search)
****************************************************************************************************
次常用快捷键:
Alt + f         光标向前(Forward)移动到下一个单词
Alt + b         光标往回(Backward)移动到前一个单词
Ctrl + w        删除从光标位置前到当前所处单词(Word)的开头
Alt + d         删除从光标位置到当前所处单词的末尾
Ctrl + y        粘贴最后一次被删除的单词
****************************************************************************************************
附录:  stty命令参考        来源:http://www.ifpubs.com/books/aix52/stty0.htm
命令参考大全,卷 5,s - u
stty 命令
用途
设置、复位和报告工作站操作参数。
语法
stty [ -a ] [ -g ] [ Options ]
描述
stty 命令对当前为标准输入的设备设置某些 I/O 选项。该命令将输出写到当前为标准输出的设备中。
这个操作系统的版本使用标准 《X/Open 可移植性指南,发行版 4》 接口来控制终端,保持与 POSIX 和 BSD 接口的兼容性。stty
命令支持 POSIX 和 BSD 的适应选项,但强烈推荐使用 POSIX 选项。同样提供废弃的 BSD 选项列表(带有对应的 POSIX
选项)。
输入以下命令时,可以将 tty 设备的标准输入重定向:
stty -a  l, L  w, W  
b, B  m, M  x, X  
c, C  n, N  y, Y  
d, D  o, O  z, Z  
e, E  p, P  [  
f, F  q, Q  \  
g, G  r, R  ]  
h, H  s, S  ^  
i, I  t, T  _  
j, J  u, U  ?  
k, K  v, V  @  
组合模式   
cooked 请参阅 -raw 选项。
ek 分别将 ERASE 和 KILL 字符设置为 Ctrl-H 和 Ctrl-U 按键顺序。
evenp 启用 parenb 和 cs7。
-evenp 禁用 parenb 并设置 cs8。
lcase, LCASE 设置 xcase,iuclc 和 olcuc。在工作站只以大写字符使用。
-lcase, -LCASE 设置 -xcase、-iuclc 和 -olcuc。
nl 设置 -icrnl 和 -onlcr。
-nl 设置 icrnl、 onlcr、-inlcr、-igncr、-ocrnl 和 -onlret。
oddp 启用 parenb、 cs7 和 parodd。
-oddp 禁用 parenb 并设置 cs8。
parity 请参阅 evenp 选项。
-parity 请参阅 -evenp 选项。
sane 将参数重新设置为合理的值。
raw 允许原始模式输入(不包括输入处理,例如 erase、kill 或 interrupt);传回奇偶(校验)位。
-raw 允许规范输入方式。
tabs 保留制表符。
-tabs, tab3 打印时将制表符替换为空格。
窗口大小   
cols n, columns n 将终端(窗口)大小记录为有 n 列。
rows n 将终端(窗口)大小记录为有 n 行。
size 将终端(窗口)大小打印到标准输出(先是行,再是列)中。
废弃选项
stty 命令支持以下 BSD 选项。 对于每个选项,都给出了建议的 POSIX 选项。
all 使用 stty -a 命令显示所有当前设置。
crt 使用 sane 选项将参数重新设置为合理的值。
crtbs 使用 -echoe 选项。
crterase 使用 echoe 选项。
-crterase 使用 -echoe 选项。
crtkill 使用 echoke 选项。
-crtkill 使用 echok 和 -echoke 选项。
ctlecho 使用 echoctl 选项。
-ctlecho 使用 -echoctl 选项。
decctlq 使用 -ixany 选项。
-decctlq 使用 ixany 选项。
even 使用 evenp 选项。
-even 使用 -evenp 选项。
everything 使用 stty -a 命令显示所有当前设置。
litout 使用 -opost 选项。
-litout 使用 opost 选项。
odd 使用 oddp 选项。
-odd 使用 -oddp 选项。
pass8 使用 -istrip 选项。
-pass8 使用 istrip 选项。
prterase 使用 echoprt 选项。
speed 使用 stty 命令显示当前设置。
tandem 使用 ixoff 选项。
-tandem 使用 -ixoff 选项。
示例
要显示您的工作站配置的简短列表,请输入:
stty这将列出与缺省值不同的设置。
要显示您的工作站配置的完整列表,请输入:
stty  -a
要启用按键顺序来停止列表滚动出屏幕,请输入:
stty ixon ixany这将设置 ixon 模式,从而可以通过按下 Ctrl-S 按键顺序来停止列表的滚动。ixany
标志允许按任意键来恢复列表的滚动。正常的工作站配置包含 ixon 和 ixany 标志,使您可以用 Ctrl-S 按键顺序停止列表的滚动,而只有
Ctrl-Q 按键顺序才能使列表重新滚动。
要重新设置搞乱的配置,请输入:
Ctrl-J stty  sane Ctrl-J
在命令前后按 Ctrl-J 按键顺序,而不是按 Enter 键。当控制 Enter 键处理的参数搞乱时,系统通常能识别 Ctrl-J 按键顺序。
有时屏幕上显示的信息可能看上去很奇怪,或当您按 Enter 键时系统不反应。当您使用 stty 命令,而它带有不兼容的参数或参数的操作难以理解时,可能会发生这种情况。当面向屏幕的应用程序异常结束并且无法复位工作站配置时,也可能发生这种情况。
输入 stty sane 命令设置合理的配置,但它可能与您的正常配置略有不同。
要保存和恢复终端的配置:
OLDCONFIG=`stty -g`          # save configuration
stty -echo                   # do not display password
echo "Enter password: \c"
read PASSWD                  # get the password
stty $OLDCONFIG              # restore configuration该命令保存工作站的配置、关闭回送信号、读取密码并恢复原始配置。
输入 stty - echo 命令关闭回送信号,这意味着当您在键盘上输入密码时,密码并不出现在屏幕上。此操作与 echo 命令(该命令在屏幕上显示消息)毫无关系。
文件
/usr/bin/stty 包含 stty 命令。
相关信息
terminfo 文件、tty 特殊文件 termios.h 头文件。
AIX 5L Version 5.2 General Programming Concepts: Writing and Debugging Programs 中的 TTY Subsystem Overview。
在 AIX 5L Version 5.2 General Programming Concepts: Writing and Debugging Programs 中的 ldterm Line Discipline。
AIX 5L Version 5.2 National Language Support Guide and Reference 中的 National Language Support。

转:linux/unix命令行终端的光标及字符控制快捷键的更多相关文章

  1. Linux中命令行终端切换工具screen

    screen命令 本文转自:http://man.linuxde.net/screen Screen是一款由GNU计划开发的用于命令行终端切换的自由软件.用户可以通过该软件同时连接多个本地或远程的命令 ...

  2. Linux/Unix命令行安装weblogic软件

    --通过java -jar wls1036_generic.jar启动安装weblogic软件进程: [weblogic@localhost mnt]$ java -jar wls1036_gener ...

  3. 28个Unix/Linux的命令行神器_转

    28个Unix/Linux的命令行神器 下面是Kristóf Kovács收集的28个Unix/Linux下的28个命令行下的工具,有一些是大家熟悉的,有一些是非常有用的,有一些是不为人知的.这些工具 ...

  4. 28 个 Unix/Linux 的命令行神器

    28 个 Unix/Linux 的命令行神器   下面是Kristóf Kovács收集的28个Unix/Linux下的28个命令行下的工具(原文链接),有一些是大家熟悉的,有一些是非常有用的,有一些 ...

  5. [转]12款最佳Linux命令行终端工具

    摘要 “工欲善其事必先利其器”,作为菜鸟,也是从别人那里偷学来的一些东东.今天看到同事用到一个终端命令行工具,觉得自己弱爆了.然后在网上搜了下该工具.发现类似的工具还是挺多的,只是自己不知道罢了. 原 ...

  6. 12款最佳Linux命令行终端工具, 20款优秀的 Linux 终端仿真器

    12款最佳Linux命令行终端工具     如果你跟我一样,整天要花大量的时间使用Linux命令行,而且正在寻找一些可替代系统自带的老旧且乏味的终端软件,那你真是找对了文章.我这里搜集了一些非常有趣的 ...

  7. 12款最佳Linux命令行终端工具

    12款最佳Linux命令行终端工具 如果你跟我一样,整天要花大量的时间使用Linux命令行,而且正在寻找一些可替代系统自带的老旧且乏味的终端软件,那你真是找对了文章.我这里搜集了一些非常有趣的终端软件 ...

  8. Linux下命令行安装weblogic10.3.6

    Linux下命令行安装weblogic10.3.6 一.安装前准备工作: 1.创建用户useradd weblogic;创建用户成功linux系统会自动创建一个和用户名相同的分组,并将该用户分到改组中 ...

  9. Linux学习心得之 Linux下命令行Android开发环境的搭建

    作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 Linux学习心得之 Linux下命令行Android开发环境的搭建 1. 前言2. Jav ...

随机推荐

  1. SpringBoot使用log4j

    1.添加log4j相关依赖 在pom.xml文件中添加相关依赖: <!--配置log4j--> <dependency> <groupId>org.springfr ...

  2. SpringMVC(六):@RequestMapping下使用@RequestHeader绑定请求报头的属性值、@CookieValue绑定请求中的Cookie值

    备注:我本地浏览器的报头(Request Header)信息如下: Accept:text/html,application/xhtml+xml,application/xml;q=0.9,image ...

  3. DIY一个超简单的画图程序

    编译环境:VS2017+Easy_X 最近笔者一直在翻阅Easy_X的帮助手册,学习到了一些关于获取鼠标状态消息函数的知识,感觉收获颇大,于是想试验一番,将所学知识运用出来.先补充一下在Easy_X中 ...

  4. 区块链3.0:拥抱EOS

    EOS是当下最火的区块链技术,被社会广泛看好为下一代区块链3.0.不同于以太坊的学习,EOS的主语言是C++,本文作为EOS研究的首篇文章,重点介绍EOS的创新点,它的周边生态,各种概念原理的解释,以 ...

  5. fiddler实现手机抓包

    对fiddler相关配置 1.允许fiddler捕获http协议,打开fiddler客户端,菜单框选择Tools->Options->HTTPS,勾选图中三项 2.允许远程连接,Tools ...

  6. 线段树——codevs 1690 开关灯

    先来一发题目: 1690 开关灯 时间限制: 1 s 空间限制: 128000 KB 题目描述 Description YYX家门前的街上有N(2<=N<=100000)盏路灯,在晚上六点 ...

  7. [HNOI 2001]矩阵乘积

    Description Input Output Sample Input 1 2 3 4 2 3 1 1 3 1 4 5 2 2 1 3 1 2 1 2 2 2 1 1 3 1 2 3 2 4 1 ...

  8. bzoj 2560: 串珠子

    Description 铭铭有n个十分漂亮的珠子和若干根颜色不同的绳子.现在铭铭想用绳子把所有的珠子连接成一个整体. 现在已知所有珠子互不相同,用整数1到n编号.对于第i个珠子和第j个珠子,可以选择不 ...

  9. ●BZOJ 2618 [Cqoi2006]凸多边形

    题链: http://www.lydsy.com/JudgeOnline/problem.php?id=2618 题解: 计算几何,半平面交. 给出一些凸包,求面积交. 把所有边都取出来,直接办平面交 ...

  10. WISCO信息组NOIP模拟赛-数据结构

    传送门 差分+暴力 #include<cstdio> #include<cstdlib> #include<algorithm> #include<cstri ...