# Menu sous Powershell

Voici un exemple de menu qu'il est possible de faire avec la méthode suivante :

## Principe de fonctionnement

Nous avons besoin de déclarer une variable qui va servir en quelque sorte de bouton “allumé” ou “éteins” : `$continue = $true`

Avec cette variable j'utilise une boucle pour permettre de laisser en permanence l'affichage :

    while (true){
    	<le menu avec des write-host>
    }

Puis une seconde variable pour stocker mon choix avec `$choix = read-host “faire un choix”`

Suivant l'état de ce choix le script sortira de la boucle `while` et cela provoquera soit une action du script soit une sortie du script avec switch ($choix).

Pour sortir du script si je fait le choix ‘x’ le script passe la variable `$continue` à `false` ce qui aura pour effet d'arrêter la boucle while.

la commande `default` permet de renvoyer un message d'avertissement si je rentre un choix qui n'est pas dans le menu.

## Exemple

    $continue = $true
    while (continue){
    	write-host “----------------------MON TITRE -----------------------”
    	write-host “1. mon action 1”
    	write-host "2. mon action2"
    	write-host "x. exit"
    	write-host"-------------------------------------------------------------------"
    	$choix = read-host “faire un choix :”
    	switch ($choix){
    		1{commande de mon action 1}
    		2{commande de mon action 2}
    		‘x’ {$continue= $false}
    		default {Write-Host "Choix invalide"-ForegroundColor Red}
    	}
    }