Zephyr shell系统使用指南-内置命令

Creative Commons
本作品采用知识共享署名

本文说明Zephyr shell系统的内置命令。

Zephyr shell系统自带内置命令,自带命令可以通过配置项进行配置是否启用来优化shell的空间占用,默认情况下CONFIG_SHELL_CMDS=y开启了部分内置命令,将其设置为n可以关闭内置命令。

Shell的内置命令列表:

  • clear :清屏

  • help:显示shell所有根命令及帮助信息

  • history:显示最近执行了的命令

  • resize:改变终端尺寸。当执行较长命令后,为保证多行显示和←, →, End, Home正常,需要执行该命令重设终端尺寸,目前只有UART后端支持该命令。

    • resize 命令默认是开启的CONFIG_SHELL_CMDS_RESIZE=y

    • 默认情况下执行resize后终端的尺寸为80x24,可以通过CONFIG_SHELL_DEFAULT_TERMINAL_WIDTH=80CONFIG_SHELL_DEFAULT_TERMINAL_HEIGHT=24配置改变

    • resize有一个default子命令,无论默认配置为多少执行resize default后就会把终端大小设置为80X24。

  • select:设置根,通过alt+r可以退回到主根。

    例如主根下按tab可以看到所有的根命令:

    1
    2
    3
    4
    5
    6
    7
    8
    uart:~$
    clear device devmem
    help history kernel
    log logging nrf_clock_control
    resize select shell
    shell_dict shell_dynamic shell_sample
    shell_sample_args shell_sample_handler shell_sample_null
    shell_sample_sub

当执行select shell_sample后,在主根下按tab就只能看到shell_sample的子命令:

1
2
uart:~$
info subinfo arginfo

再按看到下面提示表示退回到默认的主根

1
Restored default root commands

select命令默认是关闭的,需要配置CONFIG_SHELL_CMDS_SELECT=y开启

  • shell:用于设置shell终端的属性,有如下子命令

    • shell backspace_mode backspace:设置Backspace按键为backspace模式,按该按键后不会删除已输入的内容

    • shell backspace_mode delete:设置Backspace按键为delete模式,按该按键删除已输入的内容

    • shell color off:关闭shell终端颜色

    • shell color on:开启shell终端颜色

    • shell echo off:关闭shell回显,输入的命令不会被回显。需要依赖使用的终端软件支持回显。在终端软件必须回显的情况下可以用该命令关闭shell系统的回显。

    • shell echo on:开启shell回显,输入的命令被回显。

    • shell stats reset:清除log系统丢消息的统计信息。

    • shell stats show:显示log系统丢的消息。

参考

https://docs.zephyrproject.org/latest/services/shell/index.html