当前位置: 首页 > article >正文

Linux终端输入删除键backspace显示^H,输入上下左右键显示^A^B^C^D原理以及详细解决办法!

当我们装完Linux系统之后,我们可能会碰到按下删除键后出现^H这种情况。

同样,输入上下左右键显示^A^B^C^D这种情况。

这是为什么呢?

别急,后面我会说具体解决办法,先来看看这是为什么?

一、终端程序架构

首先,我们需要了解终端程序架构。

终端程序架构分为三层,分别是用户进程、行规程、终端驱动。

1. 用户进程

每个会话可以选择关联一个终端,默认会话中的前台进程组可以读写终端,即通过调系统 api 从 stdin 读取字节流,然后再输出字节流到 stdout 或 stderr。比如 bash、cat 等。

2. 行规程

行规程为用户进程提供三个缓冲区,分别对应 stdin、stdout 和 stderr。除此之外, 行规程还负责与终端驱


http://www.kler.cn/a/469886.html

相关文章:

  • PyTorch 框架实现线性回归:从数据预处理到模型训练全流程
  • 刚体变换矩阵的逆
  • 批量写入数据到数据库,卡顿怎么解决
  • Element-UI:如何实现表格组件el-table多选场景下根据数据对某一行进行禁止被选中?
  • 【学习笔记】数据结构(十)
  • 用户界面软件01
  • 大数据入门
  • 西门子1200 ModbusTCP通信(服务器)
  • 笔记本如何录屏幕视频和声音?快速入门的两种方法
  • Python批量修改所有文件后缀
  • maven中<dependencyManagement>与<dependencies>两个标签的区别
  • 十四、Vue 混入(Mixins)详解
  • 谷云科技iPaaS V7.0+企业级AI Agent产品全新发布
  • Web网页制作之JavaScript的应用
  • 解决在VS2019/2022中编译c++项目报错fatal error C1189: #error : “No Target Architecture“
  • python 操作xml文件
  • 5G工业路由器品牌,5G赋能,重塑工业路由器新标杆
  • LabVIEW项目如何选择数据库
  • 【shell编程】报错信息:Redirection Error(包含7种解决方法)
  • 【记录】Angr|Angr 的 call_state 是怎么保证不同架构的函数的参数正常传递进去的?
  • 古玩玉器交易系统|Java|SSM|VUE| 前后端分离
  • 云服务器+docker配置Java程序运行环境
  • VUE3组合式——响应式数据ref、reactive
  • Javascript算法——贪心算法(一)
  • jupyter出现“.ipynb appears to have died. It will restart automatically.”解决方法
  • 函数指针的用法