命令行程序
GNU命令标准:部分内容来自《RT-THREAD "骚操作"之编写优雅的命令行程序》
在给大家科普方法之前,我们得先了解下命令行的标准:大家可以看到下图:
图中展示了一个完整的GUN命令,一个完整的GUN命令主要由4部分组成:
-
命令名(Executable): 命令行程序名称。
-
子命令(Command): 命令行程序子功能名称。
-
选项(Options): 子命令功能的配置选项。
-
参数(Arguments):子命令功能的配置选项对应参数。
除此之外选项也有很多不同的种类。
第一我们可以将选项按照长短分为了2大类:
-
短选项: 由一个中横线+单字母组成,例如:pkgs -h 中的 -h 选项
-
长选项:由两个中横线+单词或者字母组成,例如:scons- -taget=mdk5 中的 --target 选项
第二我们可以将选项按照是否带有参数分为3大类:
-
不能带参数:选项后面一定不能带参数
-
必须带参数:选项后面必须带参数
-
参数可选:选项后面的参数可选
一 llinux中用 getopt 解析 GNU 命令行,但是有缺陷不适合在keil/iar等平台中用。
二 RT-Thread 用 optparse 软件包编写命令行函数:用法:打开shell组件和optparse 软件包。