# tiny_cli **Repository Path**: jiang-xiaojian/tiny_cli ## Basic Information - **Project Name**: tiny_cli - **Description**: 该项目是一个极简的命令行解析库,专为嵌入式系统或资源受限环境设计。它能够将输入的字符串与对应的执行函数关联,并支持类似命令行参数的调用方式,方便开发者实现自定义命令处理逻辑。 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2025-08-05 - **Last Updated**: 2025-08-22 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README 该项目是一个极简的命令行解析库,专为嵌入式系统或资源受限环境设计。它能够将输入的字符串与对应的执行函数关联,并支持类似命令行参数的调用方式,方便开发者实现自定义命令处理逻辑。 --- # Tiny_CLI Tiny_CLI 是一个用于解析命令行输入的轻量级 C 语言库。它提供了一种简单的方式来初始化命令表、添加命令以及处理命令行字符串。 ## 主要功能 - **初始化 CLI 环境**:通过 `tiny_cli_init` 函数初始化命令表。 - **添加命令**:使用 `tiny_cli_add_cmd` 函数动态添加命令及其对应的处理函数。 - **处理命令行字符串**:调用 `tiny_cli_process_str` 函数来解析并执行用户输入的命令。 - **帮助功能**:内置 `tiny_cli_help` 函数用于显示已注册命令的帮助信息。 ## 函数说明 - `tiny_cli_init`:初始化 CLI 系统,准备接收命令。 - `tiny_cli_add_cmd`:将命令及其对应的处理函数添加到命令表中。 - `tiny_cli_process_str`:用于解析并执行传入的命令行字符串。通常在串口接收数据完成后调用该函数,以实现命令的自动识别和处理。 - `tiny_cli_help`:显示已注册命令的帮助信息。 ## 使用示例 ```c void my_command(int argc, char **argv) { TINY_PRINTF("My command executed with %d arguments.\n", argc - 1); TINY_PRINTF("Arguments: "); for(int i = 1; i < argc; i++) { TINY_PRINTF("%s ", argv[i]); } TINY_PRINTF("\n"); } int main() { tiny_cli_init(); tiny_cli_add_cmd("mycmd", my_command); tiny_cli_process_str("mycmd arg1 arg2"); tiny_cli_process_str("help"); return 0; } ``` ## 构建与测试 该项目只包含一个源文件和一个头文件,可以直接集成到其他 C 项目中。 ## 贡献者指南 欢迎提交问题和改进代码!请确保提交的代码简洁高效,符合嵌入式系统的开发需求。 ## 许可证 该项目采用 MIT 许可证,详情请参见 LICENSE 文件。 --- 以上内容是基于提供的代码结构和功能的简要描述。如果需要更详细的信息,请查阅项目源代码。