Joe*_*oey 142
$true和$false.
但这些都是常数.布尔语没有语言级文字.
根据您需要它们的位置,您还可以使用强制转换为布尔值的任何内容,如果类型必须是布尔值,例如在需要布尔值(并且没有冲突的重载)的方法调用中,或者条件语句.例如,大多数非null对象都是true.null,空字符串,空数组和数字0都是假的.
Col*_*nic 16
[bool]1并且[bool]0也有效.
要向现有答案添加更多信息:布尔文字,$true并且$false在用作 PowerShell 脚本的命令行参数时也可以按原样工作。对于存储在名为 的文件中的以下 PowerShell 脚本installmyapp.ps1:
param (
[bool]$cleanuprequired
)
echo "Batch file starting execution."
Run Code Online (Sandbox Code Playgroud)
现在,如果我必须从 PowerShell 命令行调用这个 PowerShell 文件,我可以这样做:
installmyapp.ps1 -cleanuprequired $true
Run Code Online (Sandbox Code Playgroud)
或者
installmyapp.ps1 -cleanuprequired 1
Run Code Online (Sandbox Code Playgroud)
这里1和 $true是等价的。此外,0和 $false是等价的。
注意:永远不要指望字符串文字true可以自动转换为布尔值。例如,如果我运行以下命令:
installmyapp.ps1 -cleanuprequired true
Run Code Online (Sandbox Code Playgroud)
它无法执行脚本并出现以下错误:
无法处理参数“cleanuprequired”上的参数转换。无法将值“System.String”转换为类型“System.Boolean”。布尔参数仅接受布尔值和数字,例如 $True、$False、1 或 0。
| 归档时间: |
|
| 查看次数: |
62201 次 |
| 最近记录: |