Question écrire dans un fichier texte un retour de cmd

Plus d'informations
il y a 16 ans 2 mois #5868 par Anthony T.
ok pour .NET merci.

Je te demandé si la commande WBadmin et celle en général fournit sous PowerShell, lorsqu'elles ont fini leur exécution celà signifie que l'opération à été effectué correctement.
C'est la valeur de retour de l'opération qui m'interesse, savoir si l'opération est valide.

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 16 ans 2 mois #5870 par Laurent Dardenne
insqnz écrit:

Je te demandé si la commande WBadmin et celle en général fournit sous PowerShell, lorsqu'elles ont fini leur exécution celà signifie que l'opération à été effectué correctement.

Oui c'est le cas pour les deux ( exécutable et cmdlet), mais pour un exécutable le développeur doit le coder.
insqnz écrit:

C'est la valeur de retour de l'opération qui m'interesse, savoir si l'opération est valide.

Couple l'utilisation des variables automatiques $? et de $LastExitCode :
[code:1]
Set-Location \"Inconnu:\\"; if ($? -eq $false) {\"Erreur\"} else {\"ok\"}
Set-Location \"Inconnu:\\" -ea Silentlycontinue ; if ($? -eq $false) {\"Erreur\"} else {\"ok\"}
Set-Location \"C:\\"; if ($? -eq $false) {\"Erreur\"} else {\"ok\"}
xcopy c:\*.* \"inconnu:\\"; if ($? -eq $false) {\"Erreur\"} else {\"ok\"};$LastExitCode
[/code:1]

Tutoriels PowerShell

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 16 ans 2 mois #5871 par Anthony T.
Tu pourrais m'expliqué à partir de la deuxième ligne le code, j'ai compris que je reprenais la valeur de la dernière commande utilisé comme ça je peux comparer sa valeur et savoir si elle c'est bien déroulé mais là suite je ne comprend pas, et encore moins une copie forcé du disque C ...

Désolé d'être un padawan du PowerShell lol

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 16 ans 2 mois #5872 par Laurent Dardenne
insqnz écrit:

et encore moins une copie forcé du disque C

Ce n'est pas une copie forcée, mais une copie qui génére forcément une erreur ;)
La première ligne tente de modifier le path courant et génére une erreur, la seconde idem mais on n'affiche plus l'erreur, voir la doc du paramètre ErrorAction.
La troisième génére une erreur du prg externe XCopy.exe, ainsi on peut tester $LastExitCode qui prend tout son sens( voir le fichier about_Automatic_Variables.help.txt).
insqnz écrit:

Désolé d'être un padawan du PowerShell

Bah, faut commencer par le commencement, comme tout le monde, c'est plus mieux :lol:

Tutoriels PowerShell

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 16 ans 2 mois #5874 par Arnaud Petitjean
Bonsoir,

Couple l'utilisation des variables automatiques $? et de $LastExitCode


Oui c'est aussi ce que je ferais et notamment avec la variable $LastExitCode.
En principe tous les executables (bien codés) Win32 génèrent un code de retour. Zéro si tout s'est bien passé, ou une autre valeur selon le type d'erreur.

Est ce possible d'utiliser le Script en exécutable ?


Oui, c'est tout à fait possible mais pas de façon native. Pour y parvenir il faut utiliser l'outil SAPIEN PrimalForms dans sa version commerciale . Voici ses caractéristiques :
PrimalForms 2009 Features:

•Visually build sophisticated Windows forms in Powershell without having to write any code.
•Integrated Powershell Script Editor with syntax coloring, PrimalSense, bookmarks and code folding.
•Import .NET assemblies for expanded PrimalSense.
•Integrated Powershell Help and Snapin support.
•Integrated .NET Object Browser.
•Export your scripts to a file or clipboard.
•Package your scripts into an executable supporting 32 and 64 bit platforms.
•Run your script directly from within PrimalForms 2009.
•Ability to preview your Forms without executing your script code.
•Round trip code generation preserves your code between editing sessions.

L'outil est conçu à la base pour bâtir des interfaces graphique et générer le code PowerShell correspondant.
J'ai testé la fonctionnalité de conversion d'un script en exécutable et ça marche très bien. On peut même spécifier un compte utilisateur pour faire exécuter un script avec une identité autre que celui qui lance le script. Une contrepartie cependant : avoir PowerShell installé pour pouvoir exécuter les exe.

Arnaud

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 ?

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 16 ans 2 mois #5877 par Anthony T.
merci à vous pour le dépannage :)

Connexion ou Créer un compte pour participer à la conversation.

Temps de génération de la page : 0.051 secondes
Propulsé par Kunena