在 PowerShell 中创建输入框
在 PowerShell 中,脚本可以通过使用 Read-Host
命令提示用户来检索用户的输入。它的作用类似于 stdin
命令,从命令行读取用户提供的信息。
由于用户的输入也可以存储为安全字符串,因此也可以使用此 cmdlet 提示密码。
在常规 PowerShell 或 ISE 中,在提示符末尾显示一个冒号,请求在更 GUI 增强的 ISE 中输入。此外,还会显示一个弹出窗口以及几个按钮。
本文将解释使用提示符在 PowerShell 中获取用户输入以及如何使用 PowerShell GUI 生成输入框。
PowerShell 中的 Read-Host
命令简介
Read-Host
命令是最基本的 PowerShell 本机命令,我们可以使用它来请求用户输入。
示例代码:
Read-Host
基本语法:
Read-Host [[-Prompt] <Object>] [-AsSecureString] [<CommonParameters>] ALIASES
None
Read-Host
命令有三个我们可以使用的参数。
-AsSecureString
- 这个参数表示用户输入的输入被*
隐藏。使用此参数时,输出为特定的字符串对象。
- 参数值的数据类型为
Switch
。 - 参数的默认值为
NULL
。 - 不接受通配符。
-MaskInput
- 此参数类似于功能中的安全字符串参数,不同之处在于输出是字符串,而不是安全字符串。
- 参数值的数据类型为
Switch
。 - 参数的默认值为
NULL
。 - 不接受通配符。
-Prompt
- 此参数表示要显示给用户的脚本提示文本。该参数值需要是一个字符串。
在空格的情况下,它们应该用引号括起来。
- 参数的数据类型是
PSObject
。 - 参数的默认值为
NULL
。 - 不接受通配符。
在 PowerShell 中使用安全字符串参数
执行 Read-Host
命令时,其正常行为将要求用户在命令行上输入。但是,使用 AsSecureString
参数是生成要求用户输入的简单 GUI 的最简单方法之一。
为此,请运行以下代码片段。
$UserName = Read-Host 'Enter Your User Name:' -AsSecureString
输出:
唯一的缺点是输入像密码一样被屏蔽。如果我们要求输入用户的密码,这种方法是完美的。
但是,如果我们要求一些可以以纯文本形式显示的内容,比如用户名或员工 ID,该怎么办。
如果我们想要自定义不需要 AsSecureString
参数的输入框和字段怎么办。我们将在本文的下一节中讨论实现此过程的方法。
在 PowerShell 中使用 Visual Basic 库
使用 GUI 界面请求用户输入的最新方法之一是使用 Add-Type
cmdlet 加载 Microsoft Visual Basic Interaction 类。
示例代码:
Add-Type -AssemblyName Microsoft.VisualBasic
$User = [Microsoft.VisualBasic.Interaction]::InputBox('Username:', 'User', "Enter username here")
正如我们在上面的代码片段中看到的,InputBox
函数接受三个参数。
- 第一个参数是文本字段的标签或名称。
- 第二个参数是变量的名称,我们将在其中存储提供的用户输入的值。
- 第三个参数是文本字段的默认值。
输出:
一旦用户用用户输入填写文本框并按下 OK
按钮,$User
变量将包含文本框中的值。
相关文章
在 Windows PowerShell 中获取命令行参数
发布时间:2024/03/04 浏览次数:358 分类:编程语言
-
本文将解释我们如何使用 PowerShell 的参数函数处理命令行参数,参数如何工作,我们如何使用 PowerShell 参数将值传递给参数,以及定义参数的基本方法是什么。
Windows PowerShell 中的 Base64 编码
发布时间:2024/03/04 浏览次数:332 分类:编程语言
-
本文将展示如何编码和解码 base64 字符串。Windows PowerShell 当前版本没有本机命令,因此我们将向你展示如何执行此操作的替代方法。
在 Windows PowerShell 中写入输出
发布时间:2024/03/04 浏览次数:259 分类:编程语言
-
本文将向你展示如何在 Windows PowerShell 中编写或打印输出。本文还将区分多个 write cmdlet 并解释它们的意义。
在 Windows PowerShell 中设置 PATH 环境变量
发布时间:2024/03/04 浏览次数:350 分类:编程语言
-
本文将展示在 Windows PowerShell 中设置路径环境变量的正确方法。本文还展示了如何在持久性和非持久性方法中设置变量。
在 Windows PowerShell 中打印环境变量
发布时间:2024/03/04 浏览次数:869 分类:编程语言
-
本文将讨论什么是环境变量以及如何使用多个 Windows PowerShell 命令打印它们。
在 PowerShell 中注释代码
发布时间:2024/03/04 浏览次数:363 分类:编程语言
-
本文将展示在 Windows PowerShell 中注释代码的多种方法。本文还介绍了注释代码时的一些最佳实践。
在 PowerShell 中执行 LDAP 查询
发布时间:2024/03/04 浏览次数:304 分类:编程语言
-
本文将深入了解如何使用 Active Directory 过滤器和 LDAP 过滤器。