Interagindo com o usuário através de um script PowerShell

Neste post, mostro um exemplo básico de como interagir com o usuário durante a execução de um script PowerShell. A ideia é mostrar um messagebox e depois executar um determinado código de acordo com a resposta dele.

A implementação é toda bem simples, mas acredito que server para demonstrar o conceito.

Para manter um nível básico de organização, vamos definir o titulo do messagebox, a mensagem e as opções de resposta.

$title = "Messagebox Demo"
$message = "Do you like Bacon?"
$answerOptions = "YesNoCancel"
$icon = "Question"

Lembrando do escopo básico deste post, considere:

  • Opções de resposta ($answerOptions) podem ser: “Ok“, “YesNo” ou “YesNoCancel“.
  • As opções de ícone são: “Error“, “Question” e “Warning“.

 

Agora vamos disparar o messagebox, utilizando a classe correspondente no .Net e armazenar o resultado.

$msgBoxAnswer = [System.Windows.MessageBox]::Show($message, $tile, $answerOptions, $icon)

 

Ok, agora que temos a resposta do usuário, basta verificar o botão que ele clicou e executar o comando correspondente:

switch ($msgBoxAnswer) {
	'Yes' {		
		Write-Host "Great! So do I! :)"
	}

	'No' {
		Write-Host "Sad to hear that, but ok."
	}

	'Cancel' {
		Write-Host "Ok. You don't have to answer right

 

Este fonte está disponível no Github!

 

Espero ter ajudado.

The following two tabs change content below.
Arquiteto de Software e Desenvolvedor Backend (quase Fullstack), geralmente trabalho com C#, PowerShell, Python, Golang, bash e Unity (esse é mais por hobby). Estou sempre buscando algo novo para aprender, adicionando novas ferramentas ao meu cinto de utilidades.
Posted in .Net, Dev and tagged , , , , , .