首页 > 其他分享 >嵌入式常用CLI(Command Line Interfaces)

嵌入式常用CLI(Command Line Interfaces)

时间:2024-01-30 18:11:57浏览次数:46  
标签:github CLI 解决方案 Interfaces shell Command https com

为什么需要CLI

在开发过程中——从硬件原型到制造——有必要一遍又一遍地运行测试代码来验证功能或执行系统级测试。这通常可以通过单步执行调试器中的代码来完成,或者通过重复重新启动设备来导致某些事情发生。这是引起可能的启动/初始化延迟的一个缺点,需要使用调试器,并假设非开发人员(即制造商)将拥有必要的专门知识和工具。嵌入式系统需要一种简单的方法,通过开发和制造期间可用的简单接口重复运行命令。

该解决方案是一个命令行界面(CLI),它可以提供执行各种特性和功能的功能,而不需要调试器或软件专业知识。可以使用最方便的通信接口(如UART、USB、RTT或蓝牙)从CLI运行测试。

虽然可以编写自定义CLI,但有几种开源解决方案可用。我们决定在开始一个内部项目之前,先看看开源解决方案,看看它是否能完全满足我们的需求,或者只需最少的修改。实现此解决方案的第一步是查看可用的开源CLI解决方案并比较它们的功能。然后,我们可以确定一个标准解决方案,在我们的模板项目中实现,以供广泛使用。

基本CLI功能

  • Echo – anything you type in is printed back to the screen so you can see what you’re doing.
  • Backspace – Echo lets you see the mistake but supporting backspace lets you fix it.
  • Help messages – a quick reference on what is available and how it works

Candidates

After researching online I found a handful of candidates to evaluate:

对比

Ref

https://dojofive.com/blog/embedded-command-line-interfaces-and-why-you-need-them/

收藏的CLI项目

标签:github,CLI,解决方案,Interfaces,shell,Command,https,com
From: https://www.cnblogs.com/lvzh/p/17997661

相关文章

  • CyclicBarrier源码阅读
    目录简介代码分析成员变量方法参考链接本人的源码阅读主要聚焦于类的使用场景,一般只在java层面进行分析,没有深入到一些native方法的实现。并且由于知识储备不完整,很可能出现疏漏甚至是谬误,欢迎指出共同学习本文基于corretto-17.0.9源码,参考本文时请打开相应的源码对照,否则你会......
  • BCLinux
    1、BCLinux卸载license模块rpm-qa|greplicenserpm-e--nodepsbclinux-license-manager-4.0-1.oe1.bclinux.x86_64--noscriptsyumcleanall&&yummakecache2、修改密码策略vim/etc/pam.d/system-authpasswordrequisitepam_pwquality.sotry_first_pas......
  • "command failed" err="failed to run Kubelet: validate service connection: valida
    场景:更换版本1.18.0为1.26.0启动kubelet报错,""commandfailed"err="failedtorunKubelet:validateserviceconnection:validateCRIv1runtimeAPIforendpoint\"unix:///run/containerd/containerd.sock\":rpcerror:code=Unimplement......
  • 为什么button command 不需要lambda函数添加参数 但是 bind 需要
    combo=tk.ttk.Combobox(frame_combo,values=self.lis,width=25,font=("MicrosoftYaHei",20))combo.pack(side='top',anchor="nw")combo.set("请选择功能")combo.option_add("*TCombobox*......
  • DBeaver连接SqlServer报“The server selected protocol version TLS10 is not accept
    1、......
  • 洛谷题解-[ABC325E] Our clients, please wait a moment
    https://www.luogu.com.cn/problem/AT_abc325_e题目描述ある国には都市がNNN個あります。あなたは、都市111にある営業所から000個以上の都市を経由して都市NNNにある訪問先へ移動しようとしています。移動手段は社用車と電車の222種類があります。都市......
  • P1561 [USACO12JAN] Mountain Climbing S
    P1561[USACO12JAN]MountainClimbingS贪心思路首先我们设\(c_i\)为第\(i\)头牛上山后又下山的时间。那么有两种情况,我们分类讨论。第\(i\)头牛上到山顶时,第\(i-1\)头牛还未下到山脚。第\(i-1\)头牛下山完毕但第\(i\)头牛还在上山。那么\(c_i\)的公式......
  • CLion搭建Qt开发环境,并解决目录重构问题(最新版)
    序言Qt版本不断更新,QtCreator也不断更新。在Qt4和Qt5时代,我一直认为开发Qt最好的IDE就是自带的QtCreator,可是时至今日,到了Qt6时代,QtCreator已经都12.0.1版本了,不仅没变的更好用,反而变得更难用了。一方面可能是我被JetBrains全家桶和各种AI代码提示插件给惯坏了,另一方面也可能是开......
  • ClickHouse(22)ClickHouse集成HDFS表引擎详细解析
    HDFS这个引擎提供了与ApacheHadoop生态系统的集成,允许通过ClickHouse管理HDFS上的数据。这个引擎提供了Hadoop的特定功能。用法ENGINE=HDFS(URI,format)URI参数是HDFS中整个文件的URIformat参数指定一种可用的文件格式。执行SELECT查询时,格式必须支持输入,以及执行INSE......
  • Apipost-cli、Jenkins持续集成配置
    安装Apipost-clinpminstall-gapipost-cli运行脚本安装好Apipost-cli后,在命令行输入生成的命令,即可执行测试用例,运行完成后会展示测试进度并生成测试报告。Jenkins配置Apipostcli基于Nodejs运行需要在jenkins上配置NodeJs依赖Step1:在插件管理中安装NodeJs在全局工具中配置Nod......