QQ登录

只需一步,快速开始

搜索
查看: 140|回复: 0

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

[复制链接]
最佳答案
0 
累计签到:70 天
连续签到:4 天
发表于 2017-8-6 15:18:46 | 显示全部楼层 |阅读模式

马上注册加入鱼C,享用更多服务吧^_^

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

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

查看全部评分

本帖被以下淘专辑推荐:

1. 如果您的提问得到满意的答案,请务必选择【最佳答案】;2. 如果想鼓励一下楼主或帮助到您的朋友,可以给他们【评分】作为奖励;
3. 善用【论坛搜索】功能,那里可能有您想要的答案;4. 粘贴代码请点击编辑框上的 <> 按钮,否则您的代码可能会被“吃掉”!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

小甲鱼强烈推荐上一条 /1 下一条

小黑屋手机版Archiver( 粤公网安备 44051102000370号 | 粤ICP备11014136号

© 2010-2017 FishC.com GMT+8, 2017-10-21 16:43 Powered by Discuz! X2.5 Theme by dreambred

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