【Linux Basic】Unix 键盘信号

最初的Unix设计假定人们使用终端连接主机计算机。30多年过去后,情况依然如此,即便是在自己的PC机上运行Unix。多年以来,终端发展为许多不同的类型,并且提供了许多不同类型的键盘,但是Unix一直能够很好地使用它们。这是因为Unix使用了一个键盘映射系统,该系统非常灵活,可以用于任意类型的键盘。

为了控制程序运行时的操作,Unix使用了一组键盘信号。尽管这些信号是标准的,但是发送这些信号所需按下的键却可以根据需要变化。正是这一点创造了灵活性。例如,有个叫 intr (interrupt,中断)的信号可以终止进程的运行。如果输入了一条需要花费很长时间才能结束的命令,那么就可以向该命令发送 intr 信号来停止该命令的运行。

键盘输入过程中使用的信号:erase、werase、kill

  • erase 删除最后一个键入的字符
  • werase 删除最后一个键入的单词
  • kill 删除整行
信号作用
erase / 删除最后一个键入的字符
werase^W(即 Ctrl + W)删除最后一个键入的单词
kill^X / ^U删除整行

文件结束信号 EOF

有时候,您使用的程序期望您从键盘输入数据。当数据输入完,没有数据再输入时, 可以通过按下^D发送eof(end of file,文件结束)信号指示这一点。
下面举一个例子:在第8章中,将讨论提供内置计算器服务的程序 bc。一旦启动了 bc,就可以一个接一个地输入计算。在每个计算之后,bc 程序显示答案。当结束计算时, 按下 ^D 告诉 bc 程序没有数据了。在接收到eof信号之后,程序就会终止。

显示键盘映射

在 shell 中输入:

stty -a

即可看到本机的键盘映射。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值