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

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

Overview

Olá! Se você está procurando por um jeito simples e eficaz de comunicar com o usuário durante a execução de um script em PowerShell, você veio ao lugar certo! Este post vai te mostrar, de forma descomplicada e direta, como criar um messagebox que irá não apenas capturar a atenção do usuário, mas também coletar e reagir às respostas dele. Vamos embarcar juntos nessa jornada por códigos e mensagens que podem tornar seus scripts muito mais interativos e amigáveis. Preparado? Vamos lá!

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.