You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PowerShell中PromptForChoice方法如何自定义选项的帮助描述?

解决方法

你当前直接传入字符串数组作为选项的方式无法自定义帮助描述,需要将选项替换为ChoiceDescription类型对象,该对象的第二个构造参数就是对应选项的帮助说明内容。

修改后的完整代码如下:

$title    = '磁盘清理'
$question = '你想要清理以下哪项内容?'
# 构造选项对象,第二个参数即为输入?时展示的帮助描述
$choiceBrowser = New-Object System.Management.Automation.Host.ChoiceDescription '&浏览器缓存', '清理Chrome、Edge、Firefox等主流浏览器的缓存文件,不会影响浏览器保存的密码、收藏夹、浏览历史等个人数据'
$choiceTemp = New-Object System.Management.Automation.Host.ChoiceDescription '&临时文件夹', '清理系统用户目录和全局临时目录下的过期临时文件,当前被程序占用的文件会自动跳过,不会报错'
$choices  = [System.Management.Automation.Host.ChoiceDescription[]]($choiceBrowser, $choiceTemp)

$decision = $Host.UI.PromptForChoice($title, $question, $choices, 1)

switch ($decision)
{
    0 {'你选择了清理浏览器缓存'}
    1 {'你选择了清理临时文件夹'}
    Default {}
}

修改后输入?查看帮助时,输出效果如下:

B - 清理Chrome、Edge、Firefox等主流浏览器的缓存文件,不会影响浏览器保存的密码、收藏夹、浏览历史等个人数据
T - 清理系统用户目录和全局临时目录下的过期临时文件,当前被程序占用的文件会自动跳过,不会报错

内容的提问来源于stack exchange,提问作者punky

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 22:36:03