回答
GNU Coding Standards要求--version
和--help
我期待任何CLI程序来支持这些。除此之外,这取决于程序是什么,但这里有一些其他建议:-q
或--quiet
用于较少输出,-v
或--verbose
用于更多输出,-d
或--debug
用于调试输出。
的命令行参数的短期和长期的版本。检查您使用的编程语言是否有getopt
库端口。它会帮助你解析命令行参数。
--config-file=FILE | -C FILE
--help | -h
--usage | -u
--version | -v
包括您的应用程序的其他相关选项。
我建议有帮助,版本,输出详细设置的选项。其他开关取决于您的应用程序。
这取决于平台。
在Windows上,/?或/ h或/帮助是常见的。
在Unix上,一个命令应该有一个手册页。
在遵循Gnu惯例(例如Linux)的Unix变体中,它应该响应--help和--version。更好的是,它可以与bash自动完成集成。
除此之外,请查看其他程序与您的相同区域,并在有意义的地方使用相同的选项。例如:
- -R/- 递归递归下降目录
- -q/- 静音抑制输出
- -v/- 详细生成详细的诊断输出
- -n在不改变任何东西
如果你的程序接受文件名作为参数来执行,然后通常的惯例是一个连字符来表示和双连字符“从标准输入读”指“治疗的一个参数为即使文件它以连字符开头“。
-h是必须在* nix上。我会说相同的/?在Windows上,但两种平台可用的程序通常用于* nix风格。这可能是因为getopt和朋友。
一些要领:
-h, --help
-v, --version
-u, --usage
如果应用程序修改的任何文件都:
--dry-run Do not modify any files (but work as if you did)
如果应用程序使用配置文件,选择要使用指定的配置文件或目录。
一些主要业务切换到非交互方式运行,并做的工作:
mysql --execute="SELECT * FROM ..."
cmd.exe /C "dir"
埃里克雷蒙给出了他的伟大著作The Art of Unix Programming最常见的UNIX命令行选项的很好的概述。它主要讨论单字母选项,但是在这方面还是一个很好的资源。
我同意上面提到的所有参数,但想指出另一件事:您可能希望您的应用程序接受所有参数的长,短和BSD样式。当然,如果你觉得你的用户都不会乐于使用它,BSD风格可能会被忽略。长时间的风格有助于增加参数的含义,并使它们在开始使用应用程序时更容易记住。
- 1. 语言必须具备哪些功能?
- 2. 必须指定哪个通用参数?
- 3. 哪些程序必须具有清单资源?
- 4. 哪些PEP必须读取?
- 5. 开发windows phone应用程序必须知道哪些编程语言?
- 6. 哪些诺基亚设备可以部署基于Qt的应用程序?
- 7. Web应用程序的Android移动客户端应用程序必须解决哪些常见安全问题?
- 8. 这种C++/CLI应用程序可以使用哪些形式?
- 9. 参数:[KeyPair]必须具有值
- 10. 带cli的doctrine2自动加载程序必须使用AnnotationRegistry
- 11. 我必须在哪里编写Laravel Spark应用程序?
- 12. 开发CLI应用程序/脚本的最佳/流行库有哪些?
- 13. 我必须设计一个具有1000个表单的Web应用程序
- 14. 用户必须在MVC应用程序的每个页面上登录
- 15. 桌子准备好jquery必须开火
- 16. Metro Style应用程序:WinJS必须?
- 17. 我应该如何确定哪些是必须“本地复制”的引用?
- 18. __init__.py是否必须位于python应用程序的每个目录中?
- 19. 解析Facebook登录应用程序必须要求基本阅读权限
- 20. 是否必须注册下载我的应用的每个设备令牌?
- 21. .net程序员的必备工具?
- 22. Zurb应用程序基础 - CLI失败
- 23. msbuild发布 - 必须具备功能
- 24. 错误:布尔运算符==必须正好有两个参数
- 25. 在您的应用程序可以检索数据之前必须执行哪些操作?
- 26. 在C中的基本CLI程序
- 27. 每个python程序员应该知道哪些python库?
- 28. 哪些是.net/java程序员的必须订阅的通讯订阅?
- 29. 是否支持所有iPad设备的应用程序是必须的
- 30. 下载Symfony应用程序后,必须执行哪些命令才能配置数据库?
您的意思是命令行参数或参数,而不是命令。 – aib 2009-06-13 08:52:46
@aib,我修好了。 – UnkwnTech 2009-06-13 08:54:57
好问题! +1 – Cerebrus 2009-06-13 09:12:00