运行 shell 应用程序通常意味着用户处于图形受限的状态 环境。此外,虽然在手机时代我们几乎总是连接, 访问 Web 浏览器或任何其他富 UI 应用程序(如 PDF 查看器)可能并不总是如此 成为可能。这就是为什么 shell 命令必须正确地自我记录很重要的原因,这就是命令的用武之地。help

键入 + 列出 shell 已知的所有命令(包括不可用的命令) 以及对它们所做工作的简短描述,类似于以下内容:helpENTER

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.helpenabledgrouping-modegroupflatcommand-templatecommands-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.

输出自 和 都使用默认实现进行模板化 这是可以更改的。helphelp <commmand>

Option 默认为 并作为模型传递。spring.shell.command.help.commands-templateclasspath:template/help-commands-default.stgGroupsInfoModel

Option 默认为 并作为模型传递。spring.shell.command.help.command-templateclasspath:template/help-command-default.stgCommandInfoModel

表 1.GroupsInfoModel 变量
钥匙 描述

showGroups

true如果启用了显示组。否则为 false。

groups

命令变量(请参阅 GroupCommandInfoModel 变量)。

commands

命令变量(请参阅 CommandInfoModel 变量)。

hasUnavailableCommands

true如果存在不可用的命令。否则为 false。

表 2.GroupCommandInfoModel 变量
钥匙 描述

group

组的名称(如果已设置)。否则为空。

commands

命令(如果已设置)。否则为空。Type 是多值,请参阅 CommandInfoModel 变量

表 3.CommandInfoModel 变量
钥匙 描述

name

命令的名称(如果已设置)。否则为 null。Type 为 string 并包含完整命令。

names

命令的名称(如果已设置)。否则为 null。类型是多值,本质上是拆分的。name

aliases

可能的别名(如果已设置)。类型是带有字符串的多值。

description

命令的说明(如果已设置)。否则为 null。

parameters

参数变量(如果已设置)。否则为空。Type 是多值,请参见 CommandParameterInfoModel 变量

availability

可用性变量(请参阅 CommandAvailabilityInfoModel 变量)。

表 4.CommandParameterInfoModel 变量
钥匙 描述

type

参数的类型(如果已设置)。否则为 null。

arguments

参数(如果已设置)。否则为 null。类型是带有字符串的多值。

required

true如果需要。否则为 false。

description

参数的说明(如果已设置)。否则为 null。

defaultValue

参数的默认值(如果已设置)。否则为 null。

hasDefaultValue

true如果 defaultValue 存在。否则为 false。

表 5.CommandAvailabilityInfoModel 变量
钥匙 描述

available

true如果可用。否则为 false。

reason

如果设置了原因,则不可用。否则为 null。