鱼C论坛

 找回密码
 立即注册
查看: 2658|回复: 0

[学习笔记] 认识bash shell4--Bash Shell使用环境之终端机的环境设定:stty, set

[复制链接]
发表于 2017-8-6 15:18:46 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 Zbrel 于 2017-8-7 17:48 编辑

终端机的环境设定:stty, set
查阅目前的一些按键内容可以利用stty(setting tty):
stty -a 将当前所有的stty参数列出来intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = M-^?; eol2 = M-^?;swtch = M-^?; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R; werase = ^W;lnext = ^V; flush = ^O;几个重要的代表意义是:
intr:给正在运行的程序发送中断信号
quit:给正在运行的程序发送退出信号
erase:向前删除字符
kill:删除命令行上的文字
eof:文件结束,输入结束
start:重启暂停的输出
stop:停止当前的输出
susp:给正在运行的程序发送一个终端停止信号
rprnt:输入命令时提示使用过的历史命令
werase:删除命令行的最后一个字
出现的^表示Ctrl按键的意思,如intr=^C表示利用ctrl+c来中断程序。如果想要用ctrl+h来进行字符的删除,则可以下达:stty erase ^h即可。

除了stty之外,set也可以用来设定终端机设定值,set除了可以显示变量,还可以帮我们设定整个指令输出/输入的环境,如记录历史命令、显示错误内容等。
set [-uvCHhmBx]
-u 预设不启用。若启用后,当使用未设定变量时,会显示错误讯息;
-v 预设不启用。若启用后,在讯息被输出前,会先显示讯息的原始内容;
-x 预设不启用。若启用后,在指令被执行前,会显示指令内容(前面有 ++ 符号);
-h 预设启用。与历史命令有关;
-H 预设启用。与历史命令有关;
-m 预设启用。与工作管理有关;
-b 预设启用。与刮号 [] 的作用有关;
-C 预设不启用。若使用 > 等,则若档案存在时,该档案不会被覆盖。
例如:显示目前所有的set设定值:echo $-  $-变量内容就是set的所有设定
设定”若使用未定义变量时,则显示错误讯息”:set -u,若要取消这个参数,输入set +u即可。

事实上,不建议修改tty的环境,因为bash的环境已经设定的很亲和了,不需要额外的设定或修改,否则反而会产生一些困扰,下面将bash默认的组合键汇整一下:
组合按键        执行结果
Ctrl + C        终止目前的命令
Ctrl + D        输入结束,例如邮件结束的时间
Ctrl + M        就是Enter
Ctrl + S        暂停屏幕的输出
Ctrl + Q        恢复屏幕的输出
Ctrl + U        在提示符下,将整列命令删除
Ctrl + Z        暂停目前的命令

评分

参与人数 1鱼币 +2 收起 理由
小甲鱼 + 2

查看全部评分

本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-4-16 18:27

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表