10
votes

Comment obtenir un numéro de ligne avec une erreur à l'intérieur du piège dans PowerShell?

J'utilise un piège pour écrire des erreurs dans le fichier et que vous voulez un numéro de ligne d'écriture où l'erreur est terminée. xxx

où je peux obtenir un numéro de ligne d'erreur? Peut-être une variable prédéfinie?


0 commentaires

3 Réponses :


14
votes

Vous pouvez récupérer le numéro de ligne à partir de l'objet InvocationInfo sur $ _ . Par exemple, le script ... xxx

... génère la sortie: xxx


0 commentaires

8
votes

Vous devez utiliser _. InvocationInfo code> Propriétés, par exemple: scriptName code>, scriptlinenumber code>, offsetInline code>, Ligne Code>.

Par exemple Pour formater les informations de position dans le style Visual Studio: P>

C:\TEMP\test2.ps1(8): Get-Item missing


0 commentaires

-1
votes

Si vous voulez simplement trouver une ligne d'erreur après l'exécution du script, vous pouvez afficher $ erreur tableau. € Error [0] correspond à la dernière erreur.

Plus de détails ici .


0 commentaires