Question Redirection des messages d'erreur (Résolu)
- x-trem
- Auteur du sujet
- Hors Ligne
- Modérateur
-
Réduire
Plus d'informations
- Messages : 4
- Remerciements reçus 0
il y a 16 ans 3 mois #101
par x-trem
Redirection des messages d'erreur (Résolu) a été créé par x-trem
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.<br><br>Message édité par: Arnaud, à: 17/07/07 17:24
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\"


Merci
Xtrem.<br><br>Message édité par: Arnaud, à: 17/07/07 17:24
Connexion ou Créer un compte pour participer à la conversation.
- Robin Lemesle
- Hors Ligne
- Modérateur
-
Réduire
Plus d'informations
- Messages : 260
- Remerciements reçus 0
il y a 16 ans 3 mois #105
par Robin Lemesle
Robin MVP PowerShell
Réponse de Robin Lemesle sur le sujet Re:redirection du message d'erreur
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:1]$ErrorActionPreference=\"SilentlyContinue\"[/code:1]
La valeur par defaut est \"continue\"
mais attention, du coup les messages d'erreurs ne s'affichent plus ....
[code:1]$ErrorActionPreference=\"SilentlyContinue\"[/code:1]
Robin MVP PowerShell
Connexion ou Créer un compte pour participer à la conversation.
- Arnaud Petitjean
-
- Hors Ligne
- Modérateur
-
il y a 16 ans 2 mois #141
par Arnaud Petitjean
MVP PowerShell et créateur de ce magnifique forum
Auteur de 6 livres PowerShell aux éditions ENI
Fondateur de la société Start-Scripting
Besoin d'une formation PowerShell ou d'un conseil ?
Réponse de Arnaud Petitjean sur le sujet Re:redirection du message d'erreur
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:1]Get-ChildItem \"c:\RepertoireInexistant\" -ErrorAction \"silentlycontinue\"[/code:1]
idem pour -ErrorVariable qui permet de récuperer l'erreur dans une variable.
Sur ce, bon scripting...
Arnaud<br><br>Message édité par: Arnaud, à: 17/07/07 17:23
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:1]Get-ChildItem \"c:\RepertoireInexistant\" -ErrorAction \"silentlycontinue\"[/code:1]
idem pour -ErrorVariable qui permet de récuperer l'erreur dans une variable.
Sur ce, bon scripting...
Arnaud<br><br>Message édité par: Arnaud, à: 17/07/07 17:23
MVP PowerShell et créateur de ce magnifique forum

Auteur de 6 livres PowerShell aux éditions ENI
Fondateur de la société Start-Scripting
Besoin d'une formation PowerShell ou d'un conseil ?
Connexion ou Créer un compte pour participer à la conversation.
- Laurent Dardenne
- Hors Ligne
- Modérateur
-
Réduire
Plus d'informations
- Messages : 6278
- Remerciements reçus 65
il y a 16 ans 1 mois #200
par Laurent Dardenne
Tutoriels PowerShell
Réponse de Laurent Dardenne sur le sujet Re:redirection du message d'erreur
En complément:
On retrouve la notion des handles systèmes sous PowerShell, à l'identique de MSDOS, de portée locale :
[code:1]
dir FichierInexistant 2>&1
[/code:1]
Affiche sur la console. Seule la couleur d'affichage différencie la sortie standard de la sortie d'erreur.
[code:1]
dir FichierInexistant 2>$NULL
[/code:1]
[code:1]
dir c:\ >$NULL
[/code:1]
Aucun affichage
[code:1]
dir c:\, FichierInexistant 2>$NULL
[/code:1]
Seul les fichiers existant sont listés. La variable $Error contient la dernière erreur.
[code:1]
dir c:\, FichierInexistant 1 2>$NULL
[/code:1]
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.
On retrouve la notion des handles systèmes sous PowerShell, à l'identique de MSDOS, de portée locale :
[code:1]
dir FichierInexistant 2>&1
[/code:1]
Affiche sur la console. Seule la couleur d'affichage différencie la sortie standard de la sortie d'erreur.
[code:1]
dir FichierInexistant 2>$NULL
[/code:1]
[code:1]
dir c:\ >$NULL
[/code:1]
Aucun affichage
[code:1]
dir c:\, FichierInexistant 2>$NULL
[/code:1]
Seul les fichiers existant sont listés. La variable $Error contient la dernière erreur.
[code:1]
dir c:\, FichierInexistant 1 2>$NULL
[/code:1]
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
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.044 secondes
- Vous êtes ici :
-
Accueil
-
forum
-
PowerShell
-
Entraide pour les initiés
- Redirection des messages d'erreur (Résolu)