如何在PowerShell函数中使用ValidateScript属性?
该ValidateScript属性是函数内进入前验证脚本。例如,假设您要验证文件的路径,验证远程计算机的连接性等。我们将在此处以远程服务器连接性示例为例。
如果没有ValidateScript属性,我们将编写如下所示的脚本。
Function Check-RemoteServer {
param (
[string]$Server
)
if(Test-Connection -ComputerName $Server -Count 2 -Quiet -ErrorAction Ignore) {
Write-Output "$server is reachable"
} else {
Write-Output "$Server is unreachable"
}
}输出结果
PS C:\> Check-RemoteServer -Server asde.asde asde.asde is unreachable PS C:\> Check-RemoteServer -Server Google.com Google.com is reachable
使用ValidateScript属性,脚本将减少为几行代码。
Function Check-RemoteServer {
param (
[ValidateScript({Test-Connection -ComputerName $_ -Count 2 -
Quiet}, ErrorMessage = "Remote Server unreachable")]
[string]$Server
)
Write-Output "$Server is reachable"
}输出结果
PS C:\> Check-RemoteServer -Server Google.com Google.com is reachable PS C:\> Check-RemoteServer -Server asde.asde Check-RemoteServer: Cannot validate argument on parameter 'Server'. Remote Server unreachable
热门推荐
1 如何训练狗狗不叫
2 训练狗狗不叫
3 训练狗狗随行
4 怎么训练狗狗不叫
7 训练比熊狗狗教程
10 上海狗狗训练
11 怎么训练狗狗上厕所
12 训练狗狗趴下
13 狗狗服从训练
14 训练狗狗拒食
15 训练狗狗笑
16 训练狗狗大便
17 训练狗狗立
18 训练狗狗捡东西