1
28
我看到了许多Windows命令行的细节,但是如果您的程序是针对Linux的,我发现
GNU command line standard
是最直观的。基本上,它使用双连字符作为命令的长形式(例如,
GNU站点也列出了 standard option names . 这个 getopt library 大大简化了对这些命令的解析。如果C不是你的包, Python 有一个类似的图书馆 Perl . |
2
13
如果您使用C尝试 Mono.GetOptions 它是一个非常强大和简单的命令行参数解析器。它在Mono环境和Microsoft.NET框架中工作。 编辑:以下是一些功能
|
3
4
我喜欢某些CLI的一点是
捷径
.
这样,用户可能不必每次都输入all命令。 |
4
4
一个好的有用的参考: https://commandline.codeplex.com/ 通过Nuget提供的库:
使用默认单例进行单行分析:
快速入门: https://commandline.codeplex.com/wikipage?title=Quickstart&referringTitle=Documentation
|
5
3
如果可以的话,最好不要想当然。当操作员在应用程序名中键入要执行的操作,并且没有任何参数时,请使用一个用法块或在另一个选项中单击它们,打开一个Windows窗体并允许它们输入所需的一切。
参数定界我放在一个宗教主题的标题下:连字符(破折号)、双连字符、斜线、无、位置等。 您没有指明您的平台,但在下一条评论中,我假设Windows和.NET 您可以在.NET中创建一个基于控制台的应用程序,并允许它使用表单与桌面交互,只需选择基于控制台的项目,然后添加windows.forms、system.drawing等DLL即可。 我们一直这样做。这就保证了没有人在黑暗的小巷转弯。 |
6
3
命令行约定在操作系统和操作系统之间各不相同,但可能得到最多使用和最公开的审查的约定是GNUgetopt包支持的约定。见 http://www.gnu.org/software/libc/manual/html_node/Using-Getopt.html 更多信息。 它允许您将单字母命令(如-nr)与较长的自记录选项(如--numeric--reverse)混合使用。做个好人,实现一个--帮助(-?)选项,然后您的用户将能够了解他们需要知道的所有信息。 |
7
3
|
8
3
补充@vonc的答案,不要接受模棱两可的缩写。如:
实际上,在这种情况下,我可能不会接受“destroy”的缩写… |
9
2
我总是加一个/?获取帮助的参数,我总是尝试使用默认(即最常见的场景)实现。 否则,我倾向于对开关使用“/x”,对需要传递值的开关使用“/x:value”。使使用正则表达式解析参数变得非常容易。 |
10
1
我开发了这个框架,也许它有助于: syscommand是一个强大的跨平台框架,用于在.NET中开发控制台应用程序。简单,类型安全,受MVC模式的影响很大。 https://github.com/juniorgasparotto/SysCommand
测验:
|
11
0
-操作[参数]-命令[您的命令]-其他内容[其他参数]… 例如,
|
12
0
如果您使用一个标准工具来生成命令行接口,比如getopts,那么您将自动遵从。 |
13
0
这绝对是真的。我不确定DOS提示约定,但在类Unix系统上,一般约定大致如下: 1)格式为
2)单个字符参数(如“x”)作为-x传递 3)多字符参数(如'add keys')作为--add keys传递。 |
14
0
应用程序使用的约定取决于
1)它是什么类型的应用程序。
我建议您查看系统上其他命令的其他命令行接口,特别注意传递的参数。参数不正确会给用户提供解决方案导向的错误消息。一个容易找到的帮助屏幕也可以帮助在可用性。 如果不知道应用程序将做什么,就很难给出具体的示例。 |
15
0
如果您使用的是Perl,我的 CLI::Application 框架可能正是您所需要的。它允许您轻松地使用类似SVN/CVS/Git的用户界面构建应用程序(“您的命令-o——long opt some action to execute some parameters”)。 |
16
0
我创建了一个.NET C库,其中包含一个命令行分析器。您只需要创建一个继承自CmdLineObject类的类,调用Initialize,它将自动填充属性。它可以处理不同类型的转换(使用项目中还包含的高级转换库)、数组、命令行别名、单击一次参数等。它甚至可以自动创建命令行帮助(/?). 如果您感兴趣,项目的URL是 http://bizark.codeplex.com . 它目前只能作为源代码使用。 |
17
0
我刚刚发布了一个更好的命令行分析器。
支持自动——帮助生成,动词,例如commmand.exe
|
Sky · 使用命令行在Mac上安装anaconda 2 年前 |
slipperfox · 命令行提示符命令(想了解它的作用) 2 年前 |
keypoint · shell动态响应终端提示 6 年前 |
Harry · 如何在mac上通过grep命令从文件中找到新行代码? 6 年前 |
frick · 获取调用EXE的命令行路径 6 年前 |
user6124024 · 共享单独命令/进程的属性 6 年前 |
quixote · 如何在swi prolog中删除命令历史记录 6 年前 |