Flash info

Prenez une longueur d'avance avec PowerShell. Faire ce choix c'est anticiper l'avenir des produits Microsoft mais aussi être plus performant dans son travail quotidien d'admin système.

 
Accueil arrow Forum

Bienvenue sur le forum PowerShell-Scripting.com

 
xtrem
Utilisateur

PowerShelleur Débutant
Messages: 4
graphgraph
Karma: 0  
Redirection des messages d'erreur (Résolu) - 1/03/07 20:23 Bonsoir,

Comment faire pour que les messages d'erreurs ne soient pas affichés dans la console lors de l'exécution d'un script ?

Une sorte de "on error resume next" mais en powershell .

Merci

Xtrem.

Message édité par: Arnaud, à: 17/07/07 17:24
  | | L'administrateur a désactivé l'accés public en écriture.
Robin
Admin

Administrateur
Messages: 262
graphgraph
Karma: 8  
Re:redirection du message d'erreur - 5/03/07 21:23 tu peux mettre la valeur "SilentlyContinue" à la variable $ErrorActionPreference (variable globale que tu peux lister avec la commande gci variable: )
La valeur par defaut est "continue"
mais attention, du coup les messages d'erreurs ne s'affichent plus ....

Code:

 $ErrorActionPreference="SilentlyContinue"

Robin MVP PowerShell
  | | L'administrateur a désactivé l'accés public en écriture.
Arnaud
Admin

Administrateur
Messages: 1319
graphgraph
Karma: 45  
Re:redirection du message d'erreur - 2/04/07 23:14 Juste une petite précision.

Bien que les messages d'erreurs ne s'affichent plus à l'écran, PowerShell les consigne quand même dans la variable $error.

Et $error[0] contient toujours le dernier message d'erreur intercepté.

J'allais oublier, il y a aussi les paramètres communs à toutes les cmdlets (appélés aussi "ubiquitous parameters"). Ainsi tu peux, cmdlet par cmdlet définir avec -ErrorAction quel devra être leur comportement face aux erreurs.

Exemple:
Code:

 Get-ChildItem "c:\RepertoireInexistant" -ErrorAction "silentlycontinue"



idem pour -ErrorVariable qui permet de récuperer l'erreur dans une variable.

Sur ce, bon scripting...

Arnaud

Message édité par: Arnaud, à: 17/07/07 17:23
MVP PowerShell (depuis 2007)
Suivez moi sur Twitter !
  | | L'administrateur a désactivé l'accés public en écriture.
Laurent Dardenne
Utilisateur

PowerShelleur Platinum
Messages: 5726
graph
Karma: 209  
Re:redirection du message d'erreur - 16/04/07 22:40 En complément:
On retrouve la notion des handles systèmes sous PowerShell, à l'identique de MSDOS, de portée locale :
Code:

  dir FichierInexistant 2>&1


Affiche sur la console. Seule la couleur d'affichage différencie la sortie standard de la sortie d'erreur.
Code:

  dir FichierInexistant 2>$NULL


Code:

  dir c:>$NULL


Aucun affichage
Code:

  dir c:\FichierInexistant 2>$NULL


Seul les fichiers existant sont listés. La variable $Error contient la dernière erreur.
Code:

  dir c:\FichierInexistant 1 2>$NULL


La combinaison des handles de sortie standard (1) et d'erreur standard (2) ne génére aucun affichage.
L'interrogation de $? (boolean) nous indiquera si une rreur c'est produite.
L'ordre (c:, FichierInexistant) ou (FichierInexistant, c:) n'intervenant pas sur le contenu de cette variable.
Tutoriels PowerShell
  | | L'administrateur a désactivé l'accés public en écriture.
© 2020 PowerShell-Scripting.com