說明
執行 Shell 應用程式通常意味著使用者處於圖形介面受限的環境中。此外,雖然在行動電話時代我們幾乎總是連線的,但存取網頁瀏覽器或任何其他豐富的 UI 應用程式 (例如 PDF 檢視器) 可能並非總是可行。這就是為什麼 Shell 命令的自我文件化非常重要,而這正是 help
命令的用武之地。
輸入 help
+ ENTER
會列出 Shell 已知的所有命令 (包括無法使用的命令) 及其功能的簡短描述,類似於以下內容
my-shell:>help
AVAILABLE COMMANDS
Built-In Commands
exit: Exit the shell.
help: Display help about available commands
stacktrace: Display the full stacktrace of the last error.
clear: Clear the shell screen.
quit: Exit the shell.
history: Display or save the history of previously run commands
completion bash: Generate bash completion script
version: Show version info
script: Read and execute commands from a file.
輸入 help <command>
會顯示有關命令的更詳細資訊,包括可用的參數、其類型、是否為必填項以及其他詳細資訊。
以下清單顯示了應用於自身的 help
命令
my-shell:>help help
NAME
help - Display help about available commands
SYNOPSIS
help --command String
OPTIONS
--command or -C String
The command to obtain help for.
[Optional]
說明是範本化的,可以根據需要進行自訂。設定位於 spring.shell.command.help
下,您可以在其中使用 enabled
停用命令、使用 grouping-mode
選擇 group
或 flat
(如果您想透過扁平化結構來隱藏群組),使用 command-template
定義命令說明的輸出範本,以及使用 commands-template
定義命令清單的輸出。
如果設定了 spring.shell.command.help.grouping-mode=flat
,則說明會顯示
my-shell:>help help
AVAILABLE COMMANDS
exit: Exit the shell.
help: Display help about available commands
stacktrace: Display the full stacktrace of the last error.
clear: Clear the shell screen.
quit: Exit the shell.
history: Display or save the history of previously run commands
completion bash: Generate bash completion script
version: Show version info
script: Read and execute commands from a file.
help
和 help <commmand>
的輸出都是使用預設實作範本化的,可以更改。
選項 spring.shell.command.help.commands-template
預設為 classpath:template/help-commands-default.stg
,並將 GroupsInfoModel
作為模型傳遞。
選項 spring.shell.command.help.command-template
預設為 classpath:template/help-command-default.stg
,並將 CommandInfoModel
作為模型傳遞。
鍵 | 描述 |
---|---|
|
如果啟用顯示群組,則為 |
|
命令變數 (請參閱 GroupCommandInfoModel 變數)。 |
|
命令變數 (請參閱 CommandInfoModel 變數)。 |
|
如果有無法使用的命令,則為 |
鍵 | 描述 |
---|---|
|
群組的名稱 (如果已設定)。否則為空。 |
|
命令 (如果已設定)。否則為空。類型為多值,請參閱 CommandInfoModel 變數。 |
鍵 | 描述 |
---|---|
|
命令的名稱 (如果已設定)。否則為 null。類型為字串,包含完整命令。 |
|
命令的名稱 (如果已設定)。否則為 null。類型為多值,本質上是分割後的 |
|
可能的別名 (如果已設定)。類型為包含字串的多值。 |
|
命令的描述 (如果已設定)。否則為 null。 |
|
參數變數 (如果已設定)。否則為空。類型為多值,請參閱 CommandParameterInfoModel 變數。 |
|
可用性變數 (請參閱 CommandAvailabilityInfoModel 變數)。 |
鍵 | 描述 |
---|---|
|
參數的類型 (如果已設定)。否則為 null。 |
|
引數 (如果已設定)。否則為 null。類型為包含字串的多值。 |
|
如果為必填項,則為 |
|
參數的描述 (如果已設定)。否則為 null。 |
|
參數的預設值 (如果已設定)。否則為 null。 |
|
如果存在 defaultValue,則為 |
鍵 | 描述 |
---|---|
|
如果可用,則為 |
|
如果無法使用,則為原因 (如果已設定)。否則為 null。 |