2025-05-08 15:46:25 +08:00
..
2025-03-28 23:23:11 +08:00
2025-04-19 10:51:20 +08:00
2025-05-08 15:46:25 +08:00
2025-03-21 17:39:11 +08:00
2025-03-23 18:46:56 +08:00
2025-05-08 15:46:25 +08:00
2025-03-28 23:23:11 +08:00
2025-03-28 16:47:26 +08:00

说明

shell相对于kernel(内核),一般用于给用户提供简易的交互方式。

本组件主要用于提供简易的命令执行功能,主要用于调试。

使用本组件实现的shell推荐使用支持终端转义序列的软件putty、minicom打开不推荐直接使用串口调试工具打开。

控制字符

控制字符主要用于传输控制信息通常用于终端与CLI程序之间的交互。

如未特殊说明下文的终端一般指VT100及其兼容终端包括兼容的软件终端

本组件支持的控制字符如下:

控制字符 说明 备注
0x04 EOT,shell将返回EOF。 在终端上通过Ctrl-D按键输入。
0x09 HT,水平制表符 在终端上通过Tab按键输入。
'\r' 回车字符,将执行命令
'\n' 换行字符,将执行命令 当输入连续的\r\n则只有\r时会执行。
'\e' escape,将进入转义序列处理
0x7f del,将删除当前光标前的字符 通过按键 Back Space触发。

本组件支持的终端转义序列不包括escape符如下

转义序列 说明 备注
"[A" 上键
"[B" 下键
"[C" 右键
"[D" 左键
"[2~" Insert 键 打开/关闭 插入模式
"[3~" 删除键 将删除当前光标上的字符

注意在通用平台验证终端转义序列时默认只支持在unix或者类unix如Linux上验证Windows平台不予考虑。

本组件支持的控制字符与终端转义序列为PC风格(即使用PC键盘),参考链接如下:

命令解析

  • 本组件支持引号,主要用作含有空格字符的参数字符串。无论是单引号还是双引号,均可用作引号。当一种引号开始后,另一种引号变为普通字符,直到该引号结束。
  • 本组件支持单行注释,除非#号在引号内或者#号前有\字符,每行#号字符及其后的字符将被忽略。
  • 支持部分C语言转义序列,即以\开头的序列将视为转义序列。注意在Windows下文件路径中的\在本组件中需要使用\\代替。

内置命令

本组件内置部分命令,具体如下:

名称 说明 备注
help 显示帮助,后可跟具体的命令
exit 退出 有些移植中不允许退出,执行此命令后将重新登录。