RUBRIQUE
    Variables de préférence

DESCRIPTION COURTE
    Variables qui personnalisent le comportement de Windows PowerShell 

DESCRIPTION LONGUE
    Windows PowerShell inclut un jeu de variables qui vous permettent 
    de personnaliser son comportement. Ces " variables de préférence " 
    fonctionnent comme les options des systèmes basés sur une interface 
    utilisateur graphique.

    Les variables de préférence affectent l'environnement 
    d'exploitation de Windows PowerShell et toutes les commandes 
    exécutées dans celui-ci. Bien souvent, les applets de commande 
    ont des paramètres que vous pouvez utiliser pour remplacer le 
    comportement de préférence d'une commande spécifique.

    Le tableau suivant répertorie les variables de préférence et leur 
    valeur par défaut.

    Variable                             Valeur par défaut
    --------                             -------------
    $ConfirmPreference                   High
    $DebugPreference                     SilentlyContinue
    $ErrorActionPreference               Continue
    $ErrorView                           NormalView
    $FormatEnumerationLimit              4
    $LogCommandHealthEvent               False (non enregistré)
    $LogCommandLifecycleEvent            False (non enregistré)
    $LogEngineHealthEvent                True (enregistré)
    $LogEngineLifecycleEvent             True (enregistré)
    $LogProviderLifecycleEvent           True (enregistré)
    $LogProviderHealthEvent              True (enregistré)
    $MaximumAliasCount                   4096
    $MaximumDriveCount                   4096
    $MaximumErrorCount                   256
    $MaximumFunctionCount                4096
    $MaximumHistoryCount                 64
    $MaximumVariableCount                4096
    $OFS                                 (Espace ("   "))
    $OutputEncoding		         Objet ASCIIEncoding
    $ProgressPreference                  Continue
    $PSEmailServer                       (Aucune)
    $PSSessionApplicationName            WSMAN
    $PSSessionConfigurationName          https://schemas.microsoft.com/powershell/microsoft.powershell 
    $PSSessionOption                     (Voir ci-dessous)
    $VerbosePreference                   SilentlyContinue
    $WarningPreference                   Continue
    $WhatIfPreference                    0


    Windows PowerShell inclut également les variables d'environnement 
    suivantes, qui stockent les préférences utilisateur. Pour plus 
    d'informations sur les variables d'environnement, consultez 
    about_environment_variables.

    Variable                                         
    --------                         
    PSModulePath                        

UTILISATION DES VARIABLES DE PRÉFÉRENCE
    Ce document décrit chacune des variables de préférence.

    Pour afficher la valeur actuelle d'une variable de préférence 
    spécifique, tapez le nom de la variable. En réponse, Windows 
    PowerShell fournit la valeur. Par exemple, la commande suivante 
    affiche la valeur de la variable $ConfirmPreference.

        PS> $ConfirmPreference
        High

    Pour modifier la valeur d'une variable, utilisez une instruction 
    d'assignation. Par exemple, l'instruction suivante affecte la 
    valeur " Medium " (Moyenne) à la variable $ConfirmPreference.

        PS> $ConfirmPreference = "Medium"

    Comme pour toutes les variables, les valeurs que vous définissez 
    sont spécifiques à la fenêtre Windows PowerShell actuelle. Pour 
    qu'elles deviennent effectives dans toutes les fenêtres Windows 
    PowerShell, ajoutez-les à votre profil Windows PowerShell. Pour plus 
    d'informations, consultez about_profiles.


TRAVAIL À DISTANCE
   Lorsque vous exécutez des commandes sur un ordinateur distant, les 
   commandes distantes sont uniquement soumises au jeu de préférences 
   du client Windows PowerShell de l'ordinateur distant. Par exemple, 
   lorsque vous exécutez une commande distante, la valeur de la variable 
   $DebugPreference de l'ordinateur distant détermine comment Windows 
   PowerShell répond aux messages de débogage. 

   Pour plus d'informations sur les commandes distantes, consultez 
   about_remote.



$ConfirmPreference
------------------
    Détermine quelles actions d'applet de commande demandent 
    automatiquement la confirmation de l'utilisateur avant exécution. 
        
    Lorsque la valeur de $ConfirmPreference (High, Medium, Low, None 
    [Élevée, Moyenne, Faible, Aucune]) est supérieure ou égale au 
    risque de l'action d'applet de commande (High, Medium, Low, None), 
    Windows PowerShell demande automatiquement la confirmation de 
    l'utilisateur avant d'exécuter l'action. 

    Vous pouvez utiliser le paramètre Confirm d'une applet de 
    commande pour remplacer la préférence pour une commande spécifique.

        Valeurs valides :
		None (Aucune) : Aucune action d'applet de commande 
				n'est confirmée automatiquement. 
				Les utilisateurs doivent utiliser 
				le paramètre Confirm pour demander 
				la confirmation de commandes spécifiques.

		Low (Faible) :  Les actions d'applet de commande 
				avec un risque faible, moyen ou élevé 
				sont automatiquement confirmées. Pour 
				supprimer la confirmation d'une 
				commande spécifique, utilisez 
				-Confirm:$false.

		Medium:         Les actions d'applet de commande avec 
	       (Moyenne) 	un risque moyen ou élevé sont automatiquement 
				confirmées. Pour activer la confirmation 
				d'une commande spécifique, utilisez -confirm. 
				Pour supprimer la confirmation d'une 
				commande spécifique, utilisez confirm:$false.

		High:           Les actions d'applet de commande avec 
	       (Élevée,         unrisque élevé sont automatiquement confirmées. 
	   valeur par défaut)	Pour activer la confirmation d'une commande 
				spécifique, utilisez -confirm. Pour supprimer la 
				confirmation d'une commande spécifique, utilisez 
				-confirm:$false.


    EXPLICATION DÉTAILLÉE
        Lorsqu'une action d'applet de commande affecte considérablemen
        t le système, par exemple lorsqu'elle supprime des données ou 
        utilise de nombreuses ressources système, Windows PowerShell 
        peut vous inviter automatiquement à la confirmer avant son 
        exécution. 

        Par exemple :

	    PS> remove-item pref2.txt

            Confirmer
            Êtes-vous sûr de vouloir effectuer cette action ?
            Opération " Supprimer le fichier " en cours sur la cible  
            " C:\pref2.txt ".
            [O] Oui [T] Oui pour tout [N] Non [U] Non pour tout [S] 
            Suspendre [?] Aide (la valeur par défaut est " O ") :

        L'évaluation du risque correspond à la partie de l'applet de 
        commande appelée " ConfirmImpact ". Vous ne pouvez pas 
        modifier cette partie.

        Une applet de commande susceptible de représenter un risque 
        pour le système comporte un paramètre Confirm, que vous 
        pouvez utiliser pour demander ou supprimer la confirmation 
        pour une commande spécifique.

	Parce que la plupart des applets de commande utilisent la 
	valeur de risque par défaut Medium et que la valeur par défaut 
	de $ConfirmPreference est High, la confirmation automatique 
	a rarement lieu. Toutefois, vous pouvez activer la 
	confirmation automatique en remplaçant la valeur de 
	$ConfirmPreference Medium par Low. 

    EXEMPLES
      Cet exemple montre l'effet de la valeur par défaut de 
      $ConfirmPreference. La valeur High confirme uniquement les 
      actions d'applet de commande à haut risque. Étant donné que la 
      plupart des actions représentent un risque moyen, elles ne sont 
      pas automatiquement confirmées, bien que vous puissiez utiliser 
      le paramètre Confirm de l'applet de commande pour demander la 
      confirmation d'une commande spécifique.

          PS> $confirmpreference              #Obtenir la valeur actuelle de la variable 
          High          
          PS> remove-item temp1.txt           #Supprimer un fichier
          PS>                                 #Supprimé sans confirmation 
          PS> remove-item temp2.txt -confirm #Utiliser le paramètre Confirm

          Confirmer
          Êtes-vous sûr de vouloir effectuer cette action ?
          Opération " Supprimer le fichier " en cours sur la cible 
          " C:\temp2.txt ".
          [O] Oui [T] Oui pour tout [N] Non [U] Non pour tout [S] 
          Suspendre [?] Aide (la valeur par défaut est " O ") :


       Cet exemple montre l'effet du remplacement de la valeur de 
       $ConfirmPreference par Medium. Étant donné que la plupart des 
       actions d'applet de commande représentent un risque moyen, 
       elles sont automatiquement confirmées et vous devez utiliser 
       le paramètre Confirm avec une valeur $false pour supprimer 
       la demande de confirmation pour une commande spécifique.

            
          PS> $confirmpreference = "Medium" 
                                     #Modifier la valeur de $ConfirmPreference 
          PS> remove-item temp2.txt
                                     #La suppression d'un fichier 
                                     déclenche la confirmation 
          Confirmer
          Êtes-vous sûr de vouloir effectuer cette action ?
          Opération " Supprimer le fichier " en cours sur la cible 
          " C:\temp2.txt ".
          [O] Oui [T] Oui pour tout [N] Non [U] Non pour tout [S] 
          Suspendre [?] Aide (la valeur par défaut est " O ") :
	

          PS> remove-item temp3.txt -confirm:$false  #Utiliser le 
          paramètre Confirm pour supprimer la confirmation 
          PS>

$DebugPreference
------------------
	Détermine comment Windows PowerShell répond aux messages de débogage 
	générés par un script, une applet de commande ou un fournisseur, 
	ou par une commande Write-Debug à la ligne de commande. 

        Certaines applets de commande affichent des messages de 
        débogage, qui sont généralement des messages très techniques, 
        conçus pour les programmeurs et les professionnels du 
        support technique. Par défaut, les messages de débogage 
        ne s'affichent pas, mais vous pouvez les afficher en 
        modifiant la valeur de $DebugPreference.
        
        Vous pouvez également utiliser le paramètre courant Debug 
        d'une applet de commande pour afficher ou masquer les 
        messages de débogage pour une commande spécifique. Pour plus 
        d'informations, tapez : " get-help about_commonparameters ".

        Valeurs valides :
	    Stop (Arrêter) :               Affiche le message de débogage 
	    	    	    	    	   et arrête l'exécution. 
	    	    	    	    	   Écrit une erreur sur la console.

     	    Inquire (Demander) :           Affiche le message de 
	    	    	    	    	   débogage et vous demande 
	    	    	    	    	   si vous souhaitez continuer.

            Continue (Continuer) :         Affiche le message 
	    	    	    	    	   de débogage et continue 
	    	    	    	    	   l'exécution.

            SilentlyContinue :             Aucun effet. Le message de 
           (Continuer en mode              débogage n'est pas affiché 
           silencieux, valeur              et l'exécution continue 
            par défaut)                    sans interruption.
             

    EXEMPLES
    
    Les exemples suivants montrent l'effet de la modification des 
    valeurs de $DebugPreference lorsqu'une commande Write-Debug est 
    entrée à la ligne de commande. La modification affecte tous les 
    messages de débogage, y compris ceux générés par les applets de 
    commande et les scripts. Les exemples montrent également 
    l'utilisation du paramètre courant Debug, qui affiche ou masque 
    les messages de débogage liés à une commande simple.

    Cet exemple montre l'effet de la valeur par défaut " SilentlyConti
    nue " (Continuer en mode silencieux). Le message de débogage 
    n'est pas affiché et le traitement continue. La dernière commande 
    utilise le paramètre Debug pour remplacer la préférence pour une 
    commande simple.
        PS> $debugpreference                    # Obtenir la valeur actuelle de
        SilentlyContinue                          $DebugPreference

        PS> write-debug "Bonjour le monde"
        PS>                                     # Le message de débogage 
                                                  n'est pas affiché.
        PS> write-debug "Bonjour                # Utiliser le paramètre Debug
            le monde" -Debug
        DÉBOGUER : Bonjour le monde               Le message de 
                                                  débogage est demandé
        Confirmer
        Voulez-vous continuer cette opération ?
        [O] Oui [T] Oui pour tout [I] Interrompre la commande [S] 
        Suspendre [?] Aide (" O " par défaut) :

   
    Cet exemple montre l'effet de la valeur " Continue " (Continuer). 
    La dernière commande utilise le paramètre Debug avec une valeur 
    $false pour supprimer le message pour une commande simple.

        PS> $debugpreference = "Continue"       # Remplacer la valeur par 
                                                  " Continue " (Continuer)

        PS> write-debug "Bonjour le monde"
        DÉBOGUER : Bonjour le monde             # Le message de 
                                                  débogage est affiché 
                                                  et le traitement continue.
        PS>


        PS> write-debug "Bonjour le monde" -Debug:$false  
                                                # Utiliser le paramètre 
                                                  Debug avec la valeur 
                                                  " false " (faux).
        PS>                                     # Le message de débogage 
                                                  n'est pas affiché.

        
    Cet exemple montre l'effet de la valeur " Stop " (Arrêter). La 
    dernière commande utilise le paramètre Debug avec une valeur 
    $false pour supprimer le message pour une commande simple.

        PS> $debugpreference = "Stop"           # Remplacer la valeur par 
                                                  " Stop " (Arrêter)
        PS> write-debug "Bonjour le monde"
        DÉBOGUER : Bonjour le monde
        Write-Debug : L'exécution de la commande s'est arrêtée, car 
        la variable d'interpréteur de commandes " DebugPreference " a 
        la valeur Stop.
        À la ligne : 1 Caractère : 12
        + write-debug <<<< "Bonjour le monde"

        PS> write-debug "Bonjour le monde" -Debug:$false  
                                                # Utiliser le paramètre 
                                                  Debug avec $false
        PS>                                     # Le message de débogage 
                                                  n'est pas affiché 
                                                  et le traitement 
                                                  n'est pas arrêté.
      

    Cet exemple montre l'effet de la valeur " Inquire " (Demander). 
    La dernière commande utilise le paramètre Debug avec une valeur 
    $false pour supprimer le message pour une commande simple.

        PS> $debugpreference = "Inquire"
        PS> write-debug "Bonjour le monde"
        DÉBOGUER : Bonjour le monde

        Confirmer
        Voulez-vous continuer cette opération ?
        [O] Oui [T] Oui pour tout [I] Interrompre la commande [S] 
        Suspendre [?] Aide (" O " par défaut) :

        PS> write-debug "Bonjour le monde" -Debug:$false  
                                                # Utiliser le paramètre 
                                                  Debug avec $false
        PS>                                     # Le message de débogage 
                                                  n'est pas affiché 
                                                  et le traitement continue 
                                                  sans interruption.


$ErrorActionPreference
----------------------
	Détermine comment Windows PowerShell répond à une erreur sans fin 
	d'exécution (erreur qui n'arrête pas le traitement d'applet de 
	commande) à la ligne de commande ou dans un script, une applet 
        de commande ou un fournisseur, telle que les erreurs générées 
        par l'applet de commande Write-Error. 

        Vous pouvez également utiliser le paramètre courant 
        ErrorAction d'une applet de commande pour remplacer la 
        préférence pour une commande spécifique. Pour plus 
        d'informations, tapez : " get-help about_commonparameters ".


        Valeurs valides :
	    Stop (Arrêter) :                Affiche le message d'erreur et 
                                            arrête l'exécution. 

     	    Inquire (Demander) :            Affiche le message 
                                            d'erreur et vous demande 
                                            si vous souhaitez continuer.

            Continue (Continuer) :          Affiche le message 
                                            d'erreur et continue 
                                            l'exécution.

            SilentlyContinue:               Aucun effet. Le message 
            (Continuer en mode              d'erreur n'est pas 
            silencieux, valeur              affiché et l'exécution 
            par défaut)                     continue sans interruption.


       Ni $ErrorActionPreference, ni le paramètre courant ErrorAction 
       n'affectent la façon dont Windows PowerShell répond aux 
       erreurs avec fin d'exécution (celles qui arrêtent le 
       traitement d'applet de commande).

       Pour plus d'informations sur le paramètre courant ErrorAction, 
       tapez " get-help about_commonparameters ".


    EXEMPLES

    Ces exemples montrent l'effet des différentes valeurs de 
    $ErrorActionPreference et l'utilisation du paramètre courant 
    ErrorAction pour remplacer la préférence pour une commande 
    simple. Le paramètre ErrorAction a les mêmes valeurs valides que 
    la variable $ErrorActionPreference.
    
    Cet exemple montre l'effet de la valeur " Continue " (Continuer), 
    qui est la valeur par défaut.

        PS> $erroractionpreference                      
        Continue		# Afficher la valeur de la préférence.		           
        PS> write-error "Bonjour le monde"                  
                                # Générer une erreur sans fin d'exécution.

        write-error "Bonjour le monde" : Bonjour le monde        
                                # Le message d'erreur est affiché et 
                                  l'exécution continue.

        PS> write-error "Bonjour le monde" -ErrorAction:SilentlyContinue
                                # Utiliser le paramètre ErrorAction 
                                  avec une valeur " SilentlyContinue " 
                                  (Continuer en mode silencieux).
        PS>                                             
                                # Le message d'erreur n'est pas affiché et 
                                  l'exécution continue.

    Cet exemple montre l'effet de la valeur " SilentlyContinue " 
    (Continuer en mode silencieux).

        PS> $ErrorActionPreference = "SilentlyContinue"
                                # Modifier la valeur de la préférence.
        PS> write-error "Bonjour le monde"                  
                                # Générer un message d'erreur.
        PS>                     
                                # Le message d'erreur est supprimé.
        PS> write-error "Bonjour le monde" -erroraction:continue
                                # Utiliser le paramètre ErrorAction 
                                avec une valeur " Continue " (Continuer).
        write-error "Bonjour le monde" -erroraction:continue : 
        Bonjour le monde 
                                # Le message d'erreur est affiché et 
                                  l'exécution continue.

       
    Cet exemple montre l'effet d'une vraie erreur. Dans ce cas, la 
    commande obtient un fichier inexistant, nofile.txt. L'exemple 
    utilise également le paramètre courant ErrorAction pour remplacer 
    la préférence.

        PS> $erroractionpreference                      
        SilentlyContinue        # Afficher la valeur de la préférence.   

        PS> get-childitem -path nofile.txt
        PS>                     # Le message d'erreur est supprimé.

        PS> $ErrorActionPreference = "Continue" 
                                # Remplacer la valeur par 
                                  " Continue " (Continuer).

        PS> get-childitem -path nofile.txt
        Get-ChildItem : Impossible de trouver le chemin d'accès 
        " C:\nofile.txt ", car il n'existe pas.
        À la ligne : 1 Caractère : 4
        + get-childitem <<<< nofile.txt

        PS> get-childitem -path nofile.txt -erroraction SilentlyContinue
                                # Utiliser le paramètre ErrorAction 
        PS> 
                                # Le message d'erreur est supprimé.
  
        PS> $ErrorActionPreference = "Inquire"          
                                # Remplacer la valeur par " Inquire " 
                                  (Demander).
        PS> get-childitem -path nofile.txt

        Confirmer
        Impossible de trouver le chemin d'accès " C:\nofile.txt ", 
        car il n'existe pas.
        [O] Oui [T] Oui pour tout [I] Interrompre la commande [S] 
        Suspendre [?] Aide (" O " par défaut) : o 
        Get-ChildItem : Impossible de trouver le chemin d'accès 
        " C:\nofile.txt ", car il n'existe pas.
        À la ligne : 1 Caractère : 4
        + get-childitem <<<< nofile.txt

        PS> $ErrorActionPreference = "Continue"                  
                                # Remplacer la valeur par 
                                  " Continue " (Continuer).
        PS> Get-Childitem nofile.txt -erroraction "Inquire"   
                                # Utiliser le paramètre ErrorAction 
                                  pour remplacer la valeur de préférence.

        Confirmer
        Impossible de trouver le chemin d'accès " C:\nofile.txt ", 
        car il n'existe pas.          [O] Oui [T] Oui pour tout [I] 
        Interrompre la commande [S] Suspendre [?] Aide (" O " par défaut) :


$ErrorView
----------
        Détermine le format d'affichage des messages d'erreur dans 
        Windows PowerShell. 

        Valeurs valides :
	    NormalView  :         Une vue détaillée conçue pour la plupart 
	    (valeur par défaut)   des utilisateurs. Comprend une description 
                                  de l'erreur, le nom de l'objet impliqué dans 
                                  l'erreur et des flèches (<<<<) qui pointent 
                                  vers les mots de la commande qui ont 
                                  provoqué l'erreur.

     	    CategoryView :        Une vue succincte, structurée, conçue pour 
                                  les environnements de production. 
                                  Le format est : {Category}: 
                                  ({TargetName}:{TargetType}):[{Activity}], 
                                  {Reason}

        Pour plus d'informations sur les champs de CategoryView, 
        consultez " Classe ErrorCategoryInfo " dans le Kit de 
        développement logiciel (SDK) Windows PowerShell.
        
    EXEMPLES

    Ces exemples montrent l'effet des valeurs ErrorView.

    Cet exemple montre comment une erreur apparaît lorsque la valeur 
    de $ErrorView est NormalView. Dans ce cas, la commande 
    Get-ChildItem est utilisée pour rechercher un fichier inexistant.

        PS> $ErrorView                         # Vérifier la valeur.
        NormalView

        PS> get-childitem nofile.txt           # Rechercher un fichier inexistant.
        Get-ChildItem : Impossible de trouver le chemin d'accès " C:\nofile.txt ", 
        car il n'existe pas.
        À la ligne : 1 Caractère : 14
        + get-childitem <<<< nofile.txt

    Cet exemple montre comment la même erreur apparaît lorsque la 
    valeur de $ErrorView est CategoryView.

        PS> $ErrorView = "CategoryView"        # Remplacer la 
                                                 valeur par 
                                                 CategoryView

        PS> get-childitem nofile.txt
        ObjectNotFound: (C:\nofile.txt:String) [Get-ChildItem], ItemNotFoundException

 
   Cet exemple montre que la valeur de ErrorView affecte seulement 
   l'affichage de l'erreur et pas la structure de l'objet erreur 
   stocké dans la variable automatique $error. Pour plus 
   d'informations sur la variable automatique $error, consultez 
   about_automatic_variables.

   Cette commande prend l'objet ErrorRecord associé à l'erreur la 
   plus récente du tableau d'erreurs (élément 0) et met en forme 
   toutes les propriétés de l'objet erreur dans une liste.
           
        PS> $error[0] | format-list -property * -force

        Exception   : System.Management.Automation.ItemNotFoundException : Impossible de trouver 
                      le chemin d'accès " C:\nofile.txt ", car il n'existe pas. at 
                      System.Management.Automation.SessionStateInternal.GetChildItems
                      (String path, Boolean recurse, CmdletProviderContext context) at 
                      System.Management.Automation.ChildItemCmdletProviderIntrinsics.Get
                      (String path, Boolean recurse, CmdletProviderContext context) at 
                      Microsoft.PowerShell.Commands.GetChildItemCommand.ProcessRecord() : 
        TargetObject          : C:\nofile.txt
        CategoryInfo          : ObjectNotFound: (C:\nofile.txt : String) [Get-ChildItem], 
                                ItemNotFoundException 
        FullyQualifiedErrorId : PathNotFound,Microsoft.PowerShell.Commands.GetChildItemCommand :
        ErrorDetails          :
        InvocationInfo        : System.Management.Automation.InvocationInfo


$FormatEnumerationLimit
-----------------------
        Détermine le nombre d'éléments énumérés inclus dans un 
        affichage. Cette variable n'affecte pas les objets 
        sous-jacents ; simplement l'affichage. Lorsque la valeur 
        de $FormatEnumerationLimit est inférieure au nombre 
        d'éléments énumérés, Windows PowerShell ajoute des 
        points de suspension (...) pour indiquer que certains 
        éléments ne sont pas affichés.

        Valeurs valides : nombres entiers (Int32)
        Valeur par défaut : 4

    EXEMPLES

        Cet exemple montre comment utiliser la variable 
        $FormatEnumerationLimit pour améliorer l'affichage d'éléments 
        énumérés. 

        La commande de cet exemple génère une table qui répertorie 
        tous les services s'exécutant sur l'ordinateur en deux 
        groupes ; un pour les services en cours d'exécution, un pour 
        les services arrêtés. Elle utilise une commande Get-Service 
        pour obtenir tous les services, puis envoie les résultats à 
        travers le pipeline à l'applet de commande Group-Object, qui 
        groupe les résultats par état de service. 

        L'affichage résultant est une table qui répertorie l'état 
        dans la colonne Nom et les processus présentant cet état dans 
        la colonne Groupe. (Pour modifier les noms de colonne, 
        utilisez une table de hachage. Pour plus d'informations, 
        consultez les exemples de " get-help format-table -examples ".) 

        Au maximum, 4 services sont répertoriés dans la colonne 
        Groupe pour chaque état. Pour accroître le nombre d'éléments 
        répertoriés, augmentez la valeur de $FormatEnumerationLimit à 
        1000.

        Dans l'affichage résultant, la liste de la colonne Groupe est 
        maintenant limitée par la longueur de ligne. Dans la dernière 
        commande de l'exemple, utilisez le paramètre Wrap de 
        Format-Table pour afficher tous les processus de chaque 
        groupe État.
         

        PS> $formatenumerationlimit         # Rechercher la valeur actuelle
        4
        
        PS> get-service | group-object -property status           
                                            # Répertorier tous les 
                                              services regroupés par état

        Nombre Nom                      Groupe
        ----- ----                      -----
           60 Running                   {AdtAgent, ALG, Ati HotKey Poller, AudioSrv...}   
           41 Stopped                   {Alerter, AppMgmt, aspnet_state, ATI Smart...}

                                            # La liste est tronquée 
                                              après 4 éléments.


        PS> $formatenumerationlimit = 1000
                                            # Augmenter la limite à 1000.
        
        PS> get-service | group-object -property status           
                                            # Répéter la commande.

        Nombre Nom      Groupe
        -----  ----     -----
           60  Running  {AdtAgent, ALG, Ati HotKey Poller, AudioSrv, BITS, CcmExec...
           41  Stopped  {Alerter, AppMgmt, aspnet_state, ATI Smart, Browser, CiSvc...


        PS> get-service | group-object -property status | 
        format-table -wrap
                                            # Ajouter le paramètre Wrap.

        Nombre Nom      Groupe
        -----  ----     -----
           60 Running   {AdtAgent, ALG, Ati HotKey Poller, AudioSrv, BITS, CcmExec, 
                        Client for NFS, CryptSvc, DcomLaunch, Dhcp, dmserver, Dnscache, 
                        ERSvc, Eventlog, EventSystem, FwcAgent, helpsvc, HidServ, IISADMIN, 
                        InoRPC, InoRT, InoTask, lanmanserver, lanmanworkstation, LmHosts, 
                        MDM, Netlogon, Netman, Nla, NtLmSsp, PlugPlay, PolicyAgent, 
                        ProtectedStorage, RasMan, RemoteRegistry, RpcSs, SamSs, Schedule, 
                        seclogon, SENS, SharedAccess, ShellHWDetection, SMT PSVC, Spooler, 
                        srservice, SSDPSRV, stisvc, TapiSrv, TermService, Themes, TrkWks, 
                        UMWdf, W32Time, W3SVC, WebClient, winmgmt, wscsvc, wuauserv, 
                        ZCSVC, zzInterix}

           41 Stopped   {Alerter, AppMgmt, aspnet_state, ATI Smart, Browser, CiSvc, 
                        ClipSrv, clr_optimization_v2.0.50727_32, COMSysApp, CronService, 
                        dmadmin, FastUserSwitchingCompatibility, HTTPFilter, ImapiService, 
                        Mapsvc, Messenger, mnmsrvc, MSDTC, MSIServer, msvsmon80, 
                        NetDDE, NetDDEdsdm, NtmsSvc, NVSvc, ose, RasAuto, RDSessMgr, 
                        RemoteAccess, RpcLocator, RSVP, SCardSvr, SwPrv, SysmonLog, 
                        TlntSvr, upnphost, UPS, VSS, WmdmPmSN, Wmi, WmiApSrv, xmlprov}


$Log*Event
----------
        Les variables de préférence Log*Event déterminent quels types 
        d'événements sont écrits dans le journal des événements 
        Windows PowerShell de l'Observateur d'événements. Par défaut, 
        seuls les événements de moteur et de fournisseur sont 
        enregistrés, mais vous pouvez utiliser les variables de 
        préférence Log*Event pour personnaliser votre journal, par 
        exemple pour qu'il enregistre les événements de commande.   

        Les variables de préférence Log*Event sont comme suit :

            $LogCommandHealthEvent : Enregistre les erreurs et exceptions 
                survenues lors de l'initialisation et du traitement de 
                commandes. Valeur par défaut = $false (non enregistré).

            $LogCommandLifecycleEvent : 
                Enregistre le démarrage et l'arrêt de commandes et de 
                pipelines de commandes, ainsi que les exceptions de 
                sécurité survenues lors de la découverte de commande. 
                Valeur par défaut = $false (non enregistré).

            $LogEngineHealthEvent : Enregistre les erreurs et 
                défaillances des sessions. Valeur par 
                défaut = $true (enregistré).

            $LogEngineLifecycleEvent : Enregistre l'ouverture et la 
                fermeture des sessions. Valeur par défaut = $true (enregistré).

            $LogProviderHealthEvent : Enregistre les erreurs de fournisseur, 
                telles que les erreurs en lecture et en écriture, 
                les erreurs de recherche et les erreurs d'appel. 
                Valeur par défaut = $true (enregistré).

            $LogProviderLifecycleEvent : Enregistre l'ajout et la 
                suppression de fournisseurs Windows PowerShell.
                Valeur par défaut = $true (enregistré). (Pour plus 
                d'informations sur les fournisseurs Windows 
                PowerShell, tapez : " get-help about_provider ".)


        Pour activer une variable Log*Event, tapez la variable avec 
        une valeur $true, par exemple :

            $LogCommandLifeCycleEvent

            - ou -

            $LogCommandLifeCycleEvent = $true


        Pour désactiver un type d'événement, tapez la variable avec 
        une valeur $false, par exemple :

            $LogCommandLifeCycleEvent = $false

        Les événements que vous activez sont uniquement effectifs 
        pour la console Windows PowerShell actuelle. Pour appliquer 
        la configuration à toutes les consoles, enregistrez les 
        paramètres de variable dans votre profil Windows PowerShell.


$MaximumAliasCount
------------------
        Détermine le nombre d'alias autorisés dans une session 
        Windows PowerShell. La valeur par défaut, 4096, doit suffire 
        pour la plupart des utilisations, mais vous pouvez l'ajuster 
        pour satisfaire vos besoins.

        Valeurs valides : 1024 - 32768 (Int32)
        Valeur par défaut : 4096
      
        Pour compter les alias de votre système, tapez : 

		(get-alias).count

$MaximumDriveCount
------------------
        Détermine le nombre de lecteurs Windows PowerShell autorisés 
        dans une session donnée. Ce nombre inclut les lecteurs de 
        système de fichiers et les magasins de données exposés par 
        les fournisseurs Windows PowerShell qui apparaissent en tant 
        que lecteurs, tels que les lecteurs Alias: et HKLM:.

        Valeurs valides : 1024 - 32768 (Int32)
        Valeur par défaut : 4096
      
        Pour compter les alias de votre système, tapez : 

		(get-psdrive).count



$MaximumErrorCount
------------------
        Détermine le nombre d'erreurs enregistrées dans l'historique 
        d'erreur pour la session. 

        Valeurs valides : 256 - 32768 (Int32)
        Valeur par défaut : 256

        Les objets qui représentent chaque erreur conservée sont 
        stockés dans la variable automatique $Error. Cette variable 
        contient un tableau d'objets d'enregistrements d'erreurs (un 
        objet pour chaque erreur). L'erreur la plus récente est 
        représentée par le premier objet du tableau ($Error[0]).
      
        Pour compter les erreurs de votre système, utilisez la 
        propriété Count du tableau $Error. Tapez :
		
		$Error.count

        Pour afficher une erreur spécifique, utilisez la notation 
        sous forme de tableau. Par exemple, pour afficher l'erreur la 
        plus récente, tapez :

                $Error[0]

        Pour afficher l'erreur la plus ancienne, tapez :

                $Error[($Error.Count -1]

        Pour afficher les propriétés de l'objet ErrorRecord, tapez :

                $Error[0] | format-list -property * -force

        Dans cette commande, le paramètre Force remplace la mise en 
        forme spéciale des objets ErrorRecord et revient au format 
        classique.

        Pour supprimer toutes les erreurs de l'historique d'erreur, 
        utilisez la méthode Clear du tableau d'erreurs.

               PS> $Error.count
               17
               PS> $Error.clear()
               PS>
               PS> $Error.count
               0

       Pour rechercher toutes les propriétés et méthodes d'un tableau 
       d'erreurs, utilisez l'applet de commande Get-Member avec son 
       paramètre InputObject. Lorsque vous redirigez une collection 
       d'objets vers Get-Member, Get-Member affiche les propriétés et 
       méthodes des objets de la collection. Lorsque vous utilisez le 
       paramètre InputObject de Get-Member, Get-Member affiche les 
       propriétés et méthodes de la collection.


$MaximumFunctionCount
------------------
        Détermine le nombre de fonctions autorisées dans une session 
        donnée. 

        Valeurs valides : 1024 - 32768 (Int32)
        Valeur par défaut : 4096

        Pour afficher les fonctions de votre session, utilisez le 
        lecteur Function: de Windows PowerShell, exposé par le 
        fournisseur Function de Windows PowerShell. (Pour plus 
        d'informations sur le fournisseur Function, tapez 
        " get-help function ".)

        Pour répertorier les fonctions de la session active, tapez :

            get-childitem function:

        Pour compter les fonctions de la session active, tapez :

            (get-childitem function:).count


$MaximumHistoryCount
------------------
        Détermine le nombre de commandes enregistrées dans 
        l'historique des commandes pour la session active. 

        Valeurs valides : 1 - 32768 (Int32)
        Valeur par défaut : 64

        Pour déterminer le nombre actuel de commandes enregistrées 
        dans l'historique des commandes, tapez :
 
            (get-history).count

        Pour afficher la commande enregistrée dans votre historique 
        de session, utilisez l'applet de commande Get-History. Pour 
        plus d'informations, tapez : " get-help about_history ".



$MaximumVariableCount
------------------
        Détermine le nombre de variables autorisées dans une session 
        donnée, notamment les variables automatiques, variables de 
        préférence et variables que vous créez dans des commandes et 
        des scripts. 

        Valeurs valides : 1024 - 32768 (Int32)
        Valeur par défaut : 4096

        Pour afficher les variables de votre session, utilisez 
        l'applet de commande Get-Variable et les fonctionnalités 
        du lecteur Variable: de Windows PowerShell ainsi que le 
        fournisseur de variables Windows PowerShell. Pour plus 
        d'informations sur le fournisseur de variables, tapez 
        " get-help variable ".

        Pour rechercher le nombre actuel de variables sur le système, 
        tapez :

            (get-variable).count



$OFS
----
        Séparateur des champs de sortie. Spécifie le caractère qui 
        sépare les éléments d'un tableau lorsque celui-ci est 
        converti en chaîne. 

        Valeurs valides : Toute chaîne.
        Valeur par défaut : Espace

        Par défaut, la variable $OFS n'existe pas et le séparateur 
        de fichier de sortie est un espace, mais vous pouvez ajouter 
        cette variable et la définir sur n'importe quelle chaîne.

    EXEMPLES

    Cet exemple montre qu'un espace est utilisé pour séparer les 
    valeurs lorsqu'un tableau est converti en chaîne. Dans ce cas, 
    un tableau de nombres entiers est stocké dans une variable, 
    puis la variable est transtypée en chaîne.

       PS> $array = 1,2,3                 # Stocker un tableau de nombres 
                                            entiers.       

       PS> [chaîne]$array                 # Transtyper le tableau en chaîne.
       1 2 3                              # Des espaces séparent les éléments


    Pour modifier le séparateur, ajoutez la variable $OFS en lui 
    affectant une valeur. Pour fonctionner correctement, la variable 
    doit être nommée $OFS. 

       PS> $OFS = "+"                     # Créer $OFS et lui affecter le 
                                            signe " + "

       PS> [chaîne]$array                 # Répéter la commande
       1+2+3                              # Des signes " + " séparent 
                                            les éléments


    Pour restaurer le comportement par défaut, vous pouvez affecter 
    un espace ("   ") à la valeur de $OFS ou supprimer la variable. 
    Cette commande supprime la variable, puis vérifie que le 
    séparateur est un espace.
        
       PS> Remove-Variable OFS            # Supprimer $OFS
       PS>

       PS> [chaîne]$array                 # Répéter la commande
       1 2 3                              # Des espaces séparent les éléments 

$OutputEncoding
---------------
       Détermine la méthode d'encodage de caractères utilisée par 
       Windows PowerShell lorsqu'il envoie du texte à d'autres 
       applications. Par exemple, si une application retourne des 
       chaînes Unicode à Windows PowerShell, vous devrez peut-être 
       modifier la valeur pour envoyer les caractères correctement.

        Valeurs valides : Objets dérivés d'une classe d'encodage, tels que 
                          ASCIIEncoding, SBCSCodePageEncoding, UTF7Encoding, 
                          UTF8Encoding, UTF32Encoding et UnicodeEncoding.

        Valeur par défaut : Objet ASCIIEncoding (System.Text.ASCIIEncoding)

    EXEMPLES

       Cet exemple montre comment faire fonctionner la commande 
       FINDSTR de Windows dans Windows PowerShell sur un ordinateur 
       localisé pour une langue qui utilise des caractères Unicode, 
       telle que le chinois. 

       La première commande recherche la valeur de $OutputEncoding. 
       Étant donné que la valeur est un objet d'encodage, seule sa 
       propriété EncodingName est affichée.
         
          PS> $OutputEncoding.EncodingName # Rechercher la valeur 
              actuelle US-ASCII

       Dans cet exemple, une commande FINDSTR est utilisée pour 
       rechercher deux caractères chinois présents dans le fichier 
       Test.txt. Lorsque cette commande FINDSTR est exécutée dans 
       l'invite de commandes de Windows (Cmd.exe), FINDSTR recherche 
       les caractères dans le fichier texte. Toutefois, lorsque vous 
       exécutez la même commande FINDSTR dans Windows PowerShell, les 
       caractères sont introuvables car Windows PowerShell les envoie 
       à FINDSTR en texte ASCII, au lieu de les envoyer en texte Unicode.

          PS> findstr <caractères-Unicode> # Utiliser findstr pour la 
                                             recherche.
          PS>                              # Rien trouvé.

        
       Pour que la commande fonctionne dans Windows PowerShell, 
       définissez la valeur de $OutputEncoding sur la valeur de la 
       propriété OutputEncoding de la console, basée sur les 
       paramètres régionaux sélectionnés pour Windows. Étant donné 
       que OutputEncoding est une propriété statique de la console, 
       utilisez des deux-points doubles (::) dans la commande.

          PS> $OutputEncoding = [console]::outputencoding
          PS>                              # Définir la valeur sur 
                                             celle de la propriété 
                                             OutputEncoding de la 
                                             console.
          PS> $OutputEncoding.EncodingName               
          OEM États-Unis
                                           # Rechercher la valeur 
                                             résultante.
     
       Suite à cette modification, la commande FINDSTR recherche les 
       caractères.

          PS> findstr <caractères-Unicode>               
          test.txt:         <caractères-Unicode>        

					   # Utiliser findstr pour effectuer 
					     la recherche. La commande trouve 
                                             les caractères dans le fichier 
                                             texte.



$ProgressPreference
-------------------
	Détermine la façon dont Windows PowerShell répond aux mises à jour 
	de progression générées par un script, une applet de commande ou 
	un fournisseur, telles que les barres de progression générées par 
	l'applet de commande Write-Progress. L'applet de commande 
	Write-Progress crée des barres de progression qui représentent 
	l'état d'une commande.

        Valeurs valides :
	    Stop:               N'affiche pas la barre de 
	    (Arrêter)           progression. Au lieu de cela, 
                                affiche un message d'erreur et 
                                arrête l'exécution.

     	    Inquire:            N'affiche pas la barre de progression. 
     	    (Demander)          Demande l'autorisation de continuer. 
                                Si vous répondez par O ou T, 
                                affiche la barre de progression.

            Continue:           Affiche la barre de progression et continue 
            (Continuer,         l'exécution.
            valeur par défaut)  

            SilentlyContinue:   Exécute la commande, mais n'affiche 
            (Continuer en       pas la barre de progression.
            mode silencieux)  


$PSEmailServer
--------------
       Spécifie le serveur de messagerie par défaut utilisé pour 
       envoyer des messages électroniques. Cette variable de 
       préférence est utilisée par les applets de commande qui 
       envoient des messages électroniques, telles que l'applet 
       de commande Send-MailMessage. 


$PSSessionApplicationName
---------------------------
       Spécifie le nom d'application par défaut pour une commande 
       distante qui utilise la technologie Gestion des services Web.

       Le nom d'application système par défaut est WSMAN, mais vous 
       pouvez utiliser cette variable de préférence pour modifier la 
       valeur par défaut. 

       Le nom d'application est le dernier nœud d'un URI de connexion. 
       Par exemple, le nom d'application dans l'exemple d'URI suivant 
       est WSMAN.

           http://Server01:8080/WSMAN


       Le nom d'application par défaut est utilisé lorsque la 
       commande distante ne spécifie pas d'URI de connexion, 
       ni de nom d'application.  

       Le service WinRM utilise le nom d'application pour sélectionner 
       un écouteur pour traiter la demande de connexion. La valeur 
       de ce paramètre doit correspondre à la valeur de la propriété 
       URLPrefix d'un écouteur sur l'ordinateur distant.

       Pour remplacer la valeur système par défaut et la valeur 
       de cette variable, et pour sélectionner un autre nom 
       d'application pour une session particulière, utilisez les 
       paramètres ConnectionURI ou ApplicationName des applets de 
       commande New-PSSession, Enter-PSSession ou Invoke-Command.   

       Cette variable de préférence est définie sur l'ordinateur 
       local, mais elle spécifie un écouteur sur l'ordinateur 
       distant. Si le nom d'application que vous spécifiez n'existe 
       pas sur l'ordinateur distant, la commande servant à établir 
       la session échoue.



$PSSessionConfigurationName
---------------------------
       Spécifie la configuration de session par défaut, utilisée 
       pour les sessions PSSession créées dans la session active.

       Cette variable de préférence est définie sur l'ordinateur 
       local, mais elle spécifie une configuration de session se 
       trouvant sur l'ordinateur distant. 

       La valeur de la variable $PSSessionConfigurationName 
       est un URI de ressource complet. 

       La valeur par défaut : 

         https://schemas.microsoft.com/powershell/microsoft.powershell 

       indique la configuration de session Microsoft.PowerShell de 
       l'ordinateur distant. 

       Si vous spécifiez uniquement un nom de configuration, 
       l'URI de schéma suivant est ajouté en tant que préfixe :

           https://schemas.microsoft.com/powershell/

             
       Vous pouvez remplacer la valeur par défaut et sélectionner 
       une configuration de session différente pour une session 
       particulière à l'aide du paramètre ConfigurationName des 
       applets de commande New-PSSession, Enter-PSSession ou 
       Invoke-Command.   

       Vous pouvez modifier la valeur de cette variable à tout 
       moment. Lorsque vous la modifiez, rappelez-vous que la 
       configuration de session que vous sélectionnez doit exister 
       sur l'ordinateur distant. Si tel n'est pas le cas, la commande 
       servant à créer une session qui utilise la configuration de 
       session échoue.

       Cette variable de préférence ne détermine pas les configurations 
       de session locales utilisées lorsque des utilisateurs distants 
       créent une session qui se connecte à cet ordinateur. Toutefois, 
       vous pouvez utiliser les autorisations pour les configurations 
       de session locales afin de déterminer quels utilisateurs peuvent 
       utiliser ces dernières.


$PSSessionOption
----------------
        Établit les valeurs par défaut pour les options d'utilisateur 
        expérimenté dans une session à distance. Ces préférences 
        d'option remplacent les valeurs système par défaut pour les 
        options de session. 

        Vous pouvez également définir des options personnalisées pour 
        une session à distance particulière en utilisant le paramètre 
        SessionOption dans des applets de commande qui créent une 
        session, telles que New-PSSession, Enter-PSSession et 
        Invoke-Command. La valeur de paramètre SessionOption est 
        prioritaire sur les valeurs système par défaut et les valeurs 
        par défaut définies dans cette variable.

        La variable $PSSessionOption contient un objet PSSessionOption
        (System.Management.Automation.Remoting.PSSessionObject). 
        Chaque propriété de l'objet représente une option de session. 
        Par exemple, la propriété NoCompression désactive la 
        compression de données pendant la session.

        Pour créer la variable de préférence $PSSessionOption, 
        utilisez l'applet de commande New-PSSessionOption. 
        Enregistrez la sortie dans une variable appelée 
        $PSSessionOption. 

        Par exemple :

            $PSSessionOption = New-PSSessionOption -NoCompression 

        Pour utiliser la variable de préférence $PSSessionOption dans 
        chaque session Windows PowerShell, ajoutez une commande 
        New-PSSessionOption qui crée la variable $PSSessionOption à 
        votre profil Windows PowerShell.

        Pour plus d'informations sur l'applet de commande 
        New-PSSessionOption, consultez la rubrique d'aide 
        correspondante (New-PSSessionOption). Pour plus 
        d'informations sur les sessions et commandes distantes, 
        consultez about_Remote et about_PSSessions. Pour plus 
        d'informations sur l'utilisation d'un profil, 
        consultez about_Profiles.




$VerbosePreference
------------------
       	Détermine comment Windows PowerShell répond aux messages commentés 
       	générés par un script, une applet de commande ou un fournisseur, 
        tels que les messages générés par l'applet de commande Write-Verbose. 
        En général, les messages commentés décrivent les actions 
        effectuées pour exécuter une commande. 

        Par défaut, les messages commentés ne sont pas affichés, mais 
        vous pouvez modifier ce comportement en modifiant la valeur de 
        $VerbosePreference.

        Vous pouvez également utiliser le paramètre courant Verbose 
        d'une applet de commande pour afficher ou masquer les 
        messages commentés pour une commande spécifique. Pour plus 
        d'informations, tapez : " get-help about_commonparameters ".


        Valeurs valides :
	    Stop (Arrêter) :     Affiche le message commenté et 
	                         un message d'erreur, puis arrête l'exécution.

     	    Inquire :            Affiche le message commenté, 
     	    (Demander)           puis une invite qui vous demande 
	                         si vous souhaitez continuer.

            Continue:            Affiche le message commenté, 
            (Continuer)          puis continue l'exécution.

            SilentlyContinue :   N'affiche pas le message commenté. 
            (Continuer en        Continue l'exécution.
            mode silencieux, 
            valeur par défaut)

    EXEMPLES

    Ces exemples montrent l'effet des différentes valeurs de 
    $VerbosePreference et l'utilisation du paramètre courant 
    Verbose pour remplacer la valeur de préférence.
    
    Cet exemple montre l'effet de la valeur " SilentlyContinue " 
    (Continuer en mode silencieux), qui est la valeur par défaut.

        PS> $VerbosePreference             # Rechercher la valeur actuelle.
        SilentlyContinue

        PS> Write-Verbose "Test de message commenté."              
        PS>                                # Écrire un message commenté.
                                           # Le message n'est pas affiché.

        PS> Write-Verbose "Test de message commenté." -verbose   
        COMMENTAIRES : test de message commenté.
	                                   # Utiliser le paramètre Verbose.


    Cet exemple montre l'effet de la valeur " Continue " (Continuer).

        PS> $VerbosePreference = "Continue"                    
                                           # Remplacer la valeur par 
                                             " Continue " (Continuer).
        PS> Write-Verbose "Test de message commenté."              
                                           # Écrire un message commenté.
        COMMENTAIRES : test de message commenté.                          
                                           # Le message est affiché.

        PS> Write-Verbose "Test de message commenté." -verbose:$false
                                           # Utiliser le paramètre 
                                             Verbose avec une valeur $false.
        PS>                                  
                                           # Le message n'est pas affiché.


    Cet exemple montre l'effet de la valeur " Stop " (Arrêter).

        PS> $VerbosePreference = "Stop"                        
                                           # Remplacer la valeur par 
                                             " Stop " (Arrêter).
        PS> Write-Verbose "Test de message commenté."              
                                           # Écrire un message commenté.
        COMMENTAIRES : test de message commenté.
        Write-Verbose : L'exécution de la commande s'est arrêtée, car 
        la variable d'interpréteur de commandes " VerbosePreference " 
        a la valeur Stop.
        À la ligne : 1 Caractère : 14
        + Write-Verbose <<<< "Test de message commenté."

       PS> Write-Verbose "Test de message commenté." -verbose:$false
                                           # Utiliser le paramètre 
                                             Verbose avec une valeur $false 
                                           # Le message n'est pas affiché.

    Cet exemple montre l'effet de la valeur " Inquire " (Demander).

       PS> $VerbosePreference = "Inquire"                      
                                           # Remplacer la valeur par 
                                             " Inquire " (Demander).
       PS> Write-Verbose "Test de message commenté."               
       COMMENTAIRES : test de message commenté.
                                           # Écrire un message commenté.
       Confirmer
       Voulez-vous continuer cette opération ?
       [O] Oui [T] Oui pour tout [I] Interrompre la commande [S] 
       Suspendre [?] Aide (" O " par défaut) : o 

       PS> Write-Verbose "Test de message commenté." -verbose:$false
                                           # Utiliser le paramètre Verbose.
       PS>                              
                                           # Le message n'est pas affiché.


    
$WarningPreference
------------------
        Détermine comment Windows PowerShell répond aux messages 
        d'avertissement générés par un script, une applet de commande 
        ou un fournisseur, tels que les messages générés par l'applet 
        de commande Write-Warning.

        Par défaut, les messages d'avertissement sont affichés et 
        l'exécution continue, mais vous pouvez modifier ce 
        comportement en modifiant la valeur de $WarningPreference.

        Vous pouvez également utiliser le paramètre courant 
        WarningAction d'une applet de commande pour déterminer 
        comment Windows PowerShell répond aux avertissements 
        provenant d'une commande particulière. Pour plus 
        d'informations, tapez : " get-help about_commonparameters ".


        Valeurs valides :
	    Stop:               Affiche le message d'avertissement et un 
	    (Arrêter)           message d'erreur, puis arrête l'exécution.

     	    Inquire :           Affiche le message d'avertissement, 
     	    (Demander)          puis demande l'autorisation de continuer. 

            Continue :          Affiche le message d'avertissement, 
            (Continuer,         puis continue l'exécution.
            valeur par défaut)

            SilentlyContinue :  N'affiche pas le message d'avertissement. 
            (Continuer en       Continue l'exécution.
            mode silencieux) 

    EXEMPLES

    Ces exemples montrent l'effet des différentes valeurs de 
    $WarningPreference et l'utilisation du paramètre courant 
    WarningAction pour remplacer la valeur de préférence.

    
    Cet exemple montre l'effet de la valeur " Continue " (Continuer), 
    qui est la valeur par défaut.

            PS> $WarningPreference    # Rechercher la valeur actuelle.                           
            Continue                  

                                      # Écrire un message d'avertissement.
            PS> Write-Warning "Cette action peut supprimer des données."   
            AVERTISSEMENT : cette action peut supprimer des données.
                                      	
                                      # Utiliser le paramètre 
                                      # WarningAction pour  
            PS> Write-Warning "Cette action peut supprimer des données." 
                -warningaction silentlycontinue   



   Cet exemple montre l'effet de la valeur " SilentlyContinue " 
   (Continuer en mode silencieux).

            PS> $WarningPreference = "SilentlyContinue"           
                                      # Remplacer la valeur par SilentlyContinue.
 
            PS> Write-Warning "Cette action peut supprimer des données."   
            PS>                       # Écrire un message d'avertissement.

       
            PS> Write-Warning "Cette action peut supprimer des données." 
                -warningaction stop   
                                      # Utiliser le paramètre 
                                      # WarningAction pour arrêter 
                                      # le traitement lorsque cette 
                                      # commande génère un. 
            AVERTISSEMENT : cette action peut supprimer des données.
            Write-Warning : L'exécution de la commande s'est arrêtée, 
            car la variable d'interpréteur de commandes " WarningPreference " 
            a la valeur Stop.
            À la ligne : 1 Caractère : 14
            + Write-Warning <<<< "Cette action peut supprimer des données." 
              -warningaction stop 


    Cet exemple montre l'effet de la valeur " Inquire " (Demander).

           PS> $WarningPreference = "Inquire"                    
                                      # Remplacer la valeur par 
                                        " Inquire " (Demander).
           PS> Write-Warning "Cette action peut supprimer des données."  
                                      # Écrire un message 
                                        d'avertissement.   
           AVERTISSEMENT : cette action peut supprimer des données.

           Confirmer
           Voulez-vous continuer cette opération ?
           [O] Oui [T] Oui pour tout [I] Interrompre la commande [S] 
           Suspendre [?] Aide (" O " par défaut) : o 

           PS> Write-Warning "Cette action peut supprimer des données." 
               -warningaction silentlycontinue
           PS>                         # Utiliser le paramètre WarningAction 
                                       # pour modifier la réponse à un 
                                       # avertissement pour la commande actuelle.
                                       


     Cet exemple montre l'effet de la valeur " Stop " (Arrêter).

           PS> $WarningPreference = "Stop"                       
                                       # Remplacer la valeur par 
                                         " Stop " (Arrêter).

           PS> Write-Warning "Cette action peut supprimer des données."   
                                       # Écrire un message d'avertissement.
           AVERTISSEMENT : cette action peut supprimer des données.
           Write-Warning : L'exécution de la commande s'est arrêtée, 
             car la variable d'interpréteur de commandes " WarningPrefer
             ence " a la valeur Stop.
           À la ligne : 1 Caractère : 14
           + Write-Warning <<<< "Cette action peut supprimer des données."


           PS> Write-Warning "Cette action peut supprimer des données." 
               -warningaction inquire
           AVERTISSEMENT : cette action peut supprimer des données.

           Confirmer
           Voulez-vous continuer cette opération ?
           [O] Oui [T] Oui pour tout [I] Interrompre la commande [S] 
           Suspendre [?] Aide (" O " par défaut) :                         
                                       # Utiliser le paramètre WarningAction 
                                       # pour modifier la réponse à un 
                                       # avertissement pour la commande actuelle.


$WhatIfPreference
------------------
       	Détermine si le paramètre WhatIf est activé automatiquement 
       	pour chaque commande qui le prend en charge. Lorsque WhatIf 
       	est activé, l'applet de commande signale l'effet attendu de 
       	la commande, mais n'exécute pas cette dernière. 

        Valeurs valides :
	    0 :                  WhatIf n'est pas activé automatiquement. 
            (valeur par défaut)  Pour l'activer manuellement, utilisez le 
                                 paramètre WhatIf de la commande.
            

     	    1 :                  WhatIf est activé automatiquement sur 
                                 toute commande qui le prend en charge. 
                                 Les utilisateurs peuvent utiliser la 
                                 commande WhatIf avec une valeur False 
                                 pour la désactiver manuellement 
                                 (WhatIf:$false).

    EXPLICATION DÉTAILLÉE

        Lorsqu'une applet de commande prend en charge WhatIf, elle 
        signale l'effet attendu de la commande au lieu de l'exécuter. 
        Par exemple, au lieu de supprimer le fichier test.txt en 
        réponse à une commande Remove-Item, Windows PowerShell 
        signale ce qu'il supprimerait. Une commande Get-Childitem 
        suivante confirme que le fichier n'a pas été supprimé.

              PS> remove-item test.txt
              What if: Opération " Remove-Item " en cours sur la 
                cible " Élément : C:\test.txt "
              PS> get-childitem test.txt

              Directory: Microsoft.PowerShell.Core\FileSystem::C:


              Mode                LastWriteTime     Length     Name
              ----                -------------     ------     ----
              -a---         29/07/2006   19:15         84     test.txt



    EXEMPLES

    Ces exemples montrent l'effet des différentes valeurs de 
    $WhatIfPreference. Ils indiquent également comment utiliser 
    le paramètre d'applet de commande WhatIf pour remplacer la 
    valeur de préférence pour une commande spécifique.
    
    Cet exemple montre l'effet de la valeur 0 (non activé), qui est 
    la valeur par défaut.

             PS> $whatifpreference                     
             0                         # Vérifier la valeur actuelle.

             PS> get-childitem test.txt | format-list FullName
             FullName : C:\test.txt
                                       # Vérifier que le fichier existe.

             PS> remove-item test.txt                  
             PS>                       # Supprimer le fichier.

             PS> get-childitem test.txt | format-list -property FullName
                                       # Vérifier que le fichier est 
                                         supprimé.

             Get-ChildItem : Impossible de trouver le chemin d'accès 
             " C:\test.txt ", car il n'existe pas.
             À la ligne : 1 Caractère : 14
             + get-childitem <<<< test.txt | format-list fullname


     Cet exemple montre l'effet de l'utilisation du paramètre WhatIf 
     lorsque la valeur de $WhatIfPreference est 0.

             PS> get-childitem test2.txt | format-list -property FullName 
             FullName : C:\test2.txt
                                       # Vérifier que le fichier existe.

             PS> remove-item test2.txt -whatif         
             What if: Opération " Supprimer le fichier " en cours sur 
             la cible " C:\test2.txt ".
                                       # Utiliser le paramètre WhatIf

             PS> get-childitem test2.txt | format-list -property FullName
             FullName : C:\test2.txt
                                       # Vérifier que le fichier n'a 
                                         pas été supprimé 
    Cet exemple montre l'effet de la valeur 1 (WhatIf activé). 
    Lorsque vous utilisez Remove-Item pour supprimer une applet de 
    commande, Remove-Item affiche le chemin d'accès au fichier qu'il 
    supprimerait, mais ne le supprime pas.

             PS> $whatifpreference = 1                 
             PS> $whatifpreference
             1                         # Remplacer la valeur.
                                      
             PS> remove-item test.txt                  
             What if: Opération " Supprimer le fichier " en cours sur 
             la cible " C:\test.txt ".
                                       # Essayer de supprimer un fichier.

             PS> get-childitem test.txt | format-list FullName
             FullName : C:\test.txt
                                       # Vérifier que le fichier existe.

     Cet exemple montre comment supprimer un fichier lorsque la valeur de 
     $WhatIfPreference est 1. Il utilise le paramètre WhatIf avec une 
     valeur $false.

             PS> remove-item test.txt -whatif:$false
                                       # Utiliser le paramètre WhatIf 
                                         avec $false.

     Cet exemple montre que certaines applets de commande prennent en 
     charge le comportement WhatIf et d'autres non. Dans cet exemple 
     dans lequel la valeur de $WhatIfPreference est 1 (activé), une 
     commande Get-Process, qui ne prend pas en charge WhatIf est 
     exécutée, mais une commande Stop-Process exécute le comportement 
     WhatIf. Vous pouvez remplacer le comportement WhatIf de la commande 
     Stop-Process en utilisant le paramètre WhatIf avec une valeur $false.

            PS> $whatifpreference = 1                  
                                       # Remplacer la valeur par 1.
                                                      
            PS> get-process winword 
                                       # Une commande Get-Process s'exécute.

            Handles  NPM(K)    PM(K)      WS(K) VM(M)   CPU(s)     Id ProcessName
            -------  ------    -----      ----- -----   ------     -- -----------
                234       8     6324      15060   154     0.36   2312 WINWORD


           PS> stop-process -name winword
           What if: Opération " Stop-Process " en cours sur la cible " WINWORD (2312) ".
                                       # Une commande Stop-Process utilise WhatIf.

           PS> stop-process -name winword -whatif:$false
           PS>                         # WhatIf:$false remplace la préférence.
           
           PS> get-process winword                     
           Get-Process : Impossible de trouver un processus nommé " winword ". 
             Vérifiez le nom du processus et appelez de nouveau l'applet de commande.
           À la ligne : 1 Caractère : 12
           + get-process <<<< winword
                                       # Vérifier que le processus est arrêté.





VOIR AUSSI
    about_Automatic_Variables
    about_CommonParameters
    about_Environment_Variables
    about_Profiles
    about_Remote
    about_Scopes
    about_Variables




Table des matières