# SHELL OpenHarmony内核提供的Shell支持调试常用的基本功能,包含系统、文件、网络相关命令。同时OpenHarmony内核的Shell支持添加新的命令,可以根据需求来进行定制。 Shell功能仅供调试使用,暂不支持tab按键补全,按键回退等功能。 部分命令需要通过make menuconfig开启对应选项才可使用。 ## 常用命令介绍 ### cat 用于显示文本文件的内容。需开启LOSCFG_FS_VFS。 ###### 命令格式 cat [FILE] ###### 参数说明 | 参数 | 参数说明 | 取值范围 | | ---- | ---------- | -------------- | | FILE | 文件路径。 | 已存在的文件。 | ### cd 用来改变当前目录。需开启LOSCFG_FS_VFS。 ###### 命令格式 cd [path] ###### 参数说明 | 参数 | 参数说明 | 取值范围 | | ---- | ---------- | -------------- | | path | 文件路径。 | 已存在的路径。 | ### cp 拷贝文件,创建一份副本。需开启LOSCFG_FS_VFS。 ###### 命令格式 cp [SOURCEFILE] [DESTFILE] ###### 参数说明 | 参数 | 参数说明 | 取值范围 | | ---------- | ---------------------- | ----------------------------------------- | | SOURCEFILE | 源文件路径。文件路径。 | 目前只支持文件,不支持目录;文件不可为空。 | | DESTFILE | 目的文件路径。 | 支持目录以及文件名;目录需有效。 | ### date 用于查询系统日期和时间。 ###### 命令格式 date ###### 参数说明 无 ### free 显示系统内存的使用情况。 ###### 命令格式 free [ -k | -m ] ###### 参数说明 | 参数 | 参数说明 | 取值范围 | | ---- | ----------------- | -------- | | -k | 以KiB为单位显示。 | N/A | | -m | 以MiB为单位显示。 | N/A | ### help 显示当前操作系统内所有操作指令。 ###### 命令格式 help ###### 参数说明 无 ### ifconfig 用来查询网卡的IP地址、网络掩码、网关、硬件mac地址等参数。需开启LWIP_SHELLCMD_ENABLE。 ###### 命令格式 ifconfig ###### 参数说明 无 ### ls 用来显示当前目录的内容。需开启LOSCFG_FS_VFS。 ###### 命令格式 ###### ls [DIRECTORY] | 参数 | 参数说明 | 取值范围 | | --------- | ---------- | ------------------------------------------------------------ | | DIRECTORY | 文件路径。 | DIRECTORY为空时,显示当前目录的内容。
DIRECTORY为有效目录路径时,会显示对应目录下的内容。
当前LiteOS-M不支持根目录 "/"。 | ### memusage 用来显示内存使用水线。 ###### 命令格式 ###### memusage [-k/-m] | 参数 | 参数说明 | 取值范围 | | ---- | ----------------- | -------- | | -k | 以KiB为单位显示。 | N/A | | -m | 以MiB为单位显示。 | N/A | ### mkdir 用来创建一个目录。需开启LOSCFG_FS_VFS。 ###### 命令格式 ###### mkdir [DIRECTORY] | 参数 | 参数说明 | 取值范围 | | --------- | ---------- | ------------------------------------- | | DIRECTORY | 文件路径。 | DIRECTORY可以传入绝对路径和相对路径。 | ### ping 用来测试网络连接是否正常。需开启LWIP_SHELLCMD_ENABLE。 ###### 命令格式 ###### ping [ip] | 参数 | 参数说明 | 取值范围 | | ---- | ------------------------------ | -------- | | ip | 要测试是否网络连通的IPv4地址。 | N/A | ### pwd 用来显示当前路径。需开启LOSCFG_FS_VFS。 ###### 命令格式 ###### pwd ### rm 用来删除文件或文件夹。需开启LOSCFG_FS_VFS。 ###### 命令格式 ###### rm [FILE] or rm [-r/-R] [FILE] | 参数 | 参数说明 | 取值范围 | | ----- | ------------------------------- | -------------------------------- | | FILE | 文件名,可以是文件或者文件夹 。 | FILE可以传入绝对路径和相对路径。 | | -r/-R | FILE是文件夹时需要有-r /-R。 | N/A | ### rmdir 用来删除文件夹。需开启LOSCFG_FS_VFS。 ###### 命令格式 ###### rmdir [DIRECTORY] | 参数 | 参数说明 | 取值范围 | | --------- | ---------- | ------------------------------------- | | DIRECTORY | 文件路径。 | DIRECTORY可以传入绝对路径和相对路径。 | ### task 用来显示当前各任务状态。 ###### 命令格式 ###### task 显示内容主要包括任务号,优先级,状态,栈信息,信号,事件,CPU占用率,任务名称等 ### touch 用来创建文件。需开启LOSCFG_FS_VFS。 ###### 命令格式 ###### touch [FILE] | 参数 | 参数说明 | 取值范围 | | ---- | -------- | -------------------------------- | | FILE | 文件名。 | FILE可以传入绝对路径和相对路径。 | ### stack 用来查看指定任务的栈内容。需开启编译选项 LOSCFG_DEBUG_TOOLS,功能开启会影响性能。 ###### 命令格式 ###### stack [ID] | 参数 | 参数说明 | 取值范围 | | ---- | -------- | ------------------------ | | ID | 任务ID。 | 任务ID对应的任务需存在。 | ### hwi 用来查看中断的占用率。需开启编译选项 LOSCFG_DEBUG_TOOLS,功能开启会影响性能。 ###### 命令格式 ###### hwi ### st 用来查看调度信息。需开启编译选项 LOSCFG_DEBUG_TOOLS,功能开启会影响性能。 ###### 命令格式 ###### st -s | st -e | 参数 | 参数说明 | 取值范围 | | ---- | ---------------------- | -------- | | -s | 开始记录调度信息 | N/A | | -e | 停止记录并打印调度信息 | N/A |