美文网首页
终端回显(echo)

终端回显(echo)

作者: 浙南旧事 | 来源:发表于2021-09-27 20:49 被阅读0次

在pc上进行嵌入式开发调试时,一般用登陆工具(比如SecureCRT,通过ssh协议)登陆linux服务器进行编译,然后通过串口协议登陆设备进行调试。

登陆的命令行界面,一般会显示一个$提示符,然后光标闪烁,等待用户输入:

[root@yanfa123_centos6-jk18:latest ~]$

此时输入一个字符(比如a),命令行界面上立即显示这个字符,然后光标在这个字符之后闪烁:

[root@yanfa123_centos6-jk18:latest ~]$ a

这个字符并不是登陆工具接收到用户输入,然后直接打印出来的。
登陆工具将用户输入的字符发送给对端,对端再将这个字符发送回来,登陆工具接收到这个反馈字符,才会将其打印出来,这就是回显(echo)。换句话说,登陆工具并不知道回显的存在,它只是一个中间媒介,接收用户输入,将其发送给对端,再接收对端发送过来的数据,将其打印出来。

控制回显的是对端的tty。回显做为对端tty的一个属性,是可以手动开关的。
比如,输入下面的命令,就可以关闭tty回显:

[root@yanfa123_centos6-jk18:latest ~]$ stty -echo

关闭回显之后,可以正常输入命令,只是这些输入的字符不会在登陆工具的命令行界面里显示出来,但输完命令敲回车后,界面里还是可以正常显示命令执行结果的。

登陆工具接收到的用户输入,是实时发送到对端的,并不是等回车之后才发送。只是回车之后,对端才执行命令,反馈结果。

上面的例子,打开回显时,具体流程为:
  a. 用户输入字符a
  b. 登陆工具接收到字符a,并将其发送给对端
  c. 对端接收到字符a,并将字符a发送回登陆工具
  d. 登陆工具在命令行界面里显示字符a
  e. 用户输入回车
  f. 登陆工具接收到回车,并将其发送给对端
  g. 对端接收到回车,并将回车发送回登陆工具
  h. 登陆工具接收到回车之后在命令行界面里换行
  i. 对端执行命令,并将结果发送回登陆工具
  j. 登陆工具在命令行界面里显示命令执行结果(比如"-bash: a: command not found")

关闭回显时,流程为:
  a. 用户输入字符a
  b. 登陆工具接收到字符a,并将其发送给对端
  c. 用户输入回车
  d. 登陆工具接收到回车,并将其发送给对端
  e. 对端执行命令,并将结果发送回登陆工具
  f. 登陆工具在命令行界面里显示命令执行结果(比如"-bash: a: command not found")

相关文章

  • 01. Linux回显与转义序列

    0001 Linux终端禁止回显stty -echo :关闭回显stty echo :开启回显 0002 AN...

  • 终端回显(echo)

    在pc上进行嵌入式开发调试时,一般用登陆工具(比如SecureCRT,通过ssh协议)登陆linux服务器进行编译...

  • bat常用命令

    echo 回显[ON | OFF] 打开回显或关闭回显功能。echo xxx 回显xxx set设置变量,注意...

  • BAT命令大全

    1 echo 和 @@ #关闭单行回显echo off #从下一行开始关闭回显@echo off#从本行开始关闭回...

  • 常用的bat代码知识大全,给生活添点乐趣

    1 echo 和 @ @ #关闭单行回显 echo off #从下一行开始关闭回显 @echo off #从本行开...

  • 常用的特殊符号(1)

    @命令行回显屏蔽符 关闭当前行回显 echo off 关闭所有行回显(echo off 不会屏蔽) %批处理变...

  • BAT 文件 常用 代码 大全

    1 echo 和 @ @ #关闭单行回显 echo off ...

  • windows脚本(批处理文件)

    1.Echo 命令打开回显或关闭请求回显功能,或显示消息。如果没有任何参数,echo 命令将显示当前回显设置。语法...

  • 常见命令

    echo:回显 echo [SHORT-OPTION]...[STRING]... -n : 行尾不换行输出,d...

  • bat命令简单介绍1(转)

    一.简单批处理内部命令简介 1.Echo 命令 打开回显或关闭请求回显功能,或显示消息。如果没有任何参数,echo...

网友评论

      本文标题:终端回显(echo)

      本文链接:https://www.haomeiwen.com/subject/lbdknltx.html