O atributo “ValidateSet”Em PowerShell é utilizado para validar os valores ou objetos fornecidos. O que significa que apenas permite os valores inseridos na lista fornecida de itens. O parâmetro especificado também pode ser utilizado nas funções do PowerShell. Durante o tempo de execução, ele verifica se a lista contém os valores específicos ou não. Se o valor for encontrado na lista, este cmdlet continuará sendo executado, caso contrário, ele lançará um erro.
Este artigo fornecerá detalhes perspicazes sobre o atributo PowerShell "ValidateSet".
Powershell validateSet: Escolha de uma lista
O atributo “Validar”Em PowerShell é utilizado para verificar e validar se o valor ou objeto inserido existe nos objetos fornecidos ou não. Exemplos que demonstram o atributo declarado são fornecidos abaixo.
Exemplo 1: Crie uma função para solicitar ao usuário inserir um valor e validá -lo usando o cmdlet "ValidateSet"
O exemplo a seguir validará o valor inserido pelo usuário:
Função os
[VidadateSet ('Windows', 'iOS', 'Linux')]
$ read = read -host -PROMPT 'Digite o nome do sistema operacional'
De acordo com o código acima:
Vamos validar o valor dado, se ele existe na coleção ou não:
janelas
Agora, vamos entrar no valor do objeto que não existe no conjunto de objetos fornecidos:
Manjaro
Pode -se observar que o console lança um erro.
Exemplo 2: Use a instrução "param" junto com o atributo "validateSet" para validar o valor fornecido
O exemplo declarado levará o usuário a inserir o valor e, em seguida, validar o valor inserido:
Param (
[Parâmetro (obrigatório)]
[Vidadateset ("Adam", "John", "Bill", "Katty")]]
$ Funcionários_info
)
$ funcionários_age = [ordenado]@
'Adam' = 28
'John' = 26
'Bill' = 32
$ Funcionários_info | Foreach-object
$ Age_Output = "0 tem 1 anos de idade."-F $ _, $ FURILIÁRIO_AGE [$ _]
Write-Output $ AGE_OUTPUT
No código acima mencionado:
Vamos inserir o valor fornecido à coleta de objetos para validá -lo:
Conta
Pode -se observar que o comando executado com sucesso porque o objeto inserido existe nos objetos fornecidos.
Agora, vamos entrar no objeto que não existe na coleção de objetos:
James
Pode -se ver que o console lança um erro porque o objeto inserido não existe na coleção de objetos fornecidos.
Conclusão
O cmdlet “ValidateSet”Em PowerShell especifica o conjunto de valores possíveis para um argumento de parâmetro cmdlet. Além disso, isso também pode ser usado pela função PowerShell. Quando está ativado, aceita e valida o valor fornecido. Se o valor existir na coleção, o programa será executado ainda mais. Caso contrário, não será executado e lançará um erro. Este blog forneceu informações detalhadas sobre o atributo "validateSet".