回答
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