多行注释以小于和哈希 (<# ) 开头,以哈希和大于 (#> ) 结尾
这些字符中的所有内容都被视为注释。
图 3.5 多行注释示例在本章中,我们将在脚本的标题中包含几行注释,这些注释向使用我们脚本的任何人解释它的作用、它是如何工作的以及如何使用它的示例。PowerShell 会忽略所有这些注释,但它使任何尝试阅读或使用我们的脚本的人都更容易理解如何通过多行注释立即执行此操作。
3.6 代码注释示例。3.3 输入/输出在上一个Tiny PowerShell项目中,我们对所有变量进行了硬编码。这很快就会变得令人厌烦和危险,必须重新编写、重新保存和重新执行代码,每次更改变量。相反,如果PowerShell在运行时询问我们信息并自动将此信息存储在变量中,该怎么办?
3.3.1 读取主机在上一个 Tiny PowerShell 项目中,我们使用了 cmdlet Write-Host 。这将我们的数据写入控制台供操作员读取。 读取主机则相反。控制台会提示操作员输入信息。当我们使用与 Read-Host 结合使用的变量时,我们可以存储这些数据以供以后在脚本中使用。
图 3.7 读取主机 Cmdlet 的剖析$First_Name=Read-Host "Enter the user’s First Name"
Write-Host $First_Name
读取主机后面的引号中的字符串不是必需的。没有它,脚本将很好地执行。但是,您使脚本的操作员不知道他们被要求存储哪些信息。最好为操作员提供一些有关数据将用于前期用途的线索。如果没有末尾的字符串,操作员只会看到一个闪烁的光标,并且脚本可能会完全挂起,因为操作员不知道他/她此时需要执行任何操作。
3.3.2 菜单通过使用 Read-Host 和 Write-Host 语句,操作员可以轻松利用菜单或标志来帮助在代码中做出更复杂的决策。
Clear-Host
$First_Name=Read-Host "What is the user’s First Name?"
Write-Host "You entered: $First_Name `n Is that right?"
$Question=Read-Host "(Y)es, or (N)o"
注意
在 Visual Studio Code 中,当您键入上面的代码(如下所示)时,您将在名为 $Question 的变量下看到一条红色波浪线。它可能会说“变量'问题'被分配并且从未使用过。这是预期错误,可以安全地忽略。
图 3.8 使用读写主机、写入主机的简单菜单