Y a-t-il un bug dans l'outil PowerShell Start-Process
lors de l'accès à la StandardError
et StandardOutput
des propriétés ?
Si j'exécute la commande suivante, je n'obtiens aucun résultat :
$process = Start-Process -FilePath ping -ArgumentList localhost -NoNewWindow -PassThru -Wait
$process.StandardOutput
$process.StandardError
Mais si je redirige la sortie vers un fichier, j'obtiens le résultat attendu :
$process = Start-Process -FilePath ping -ArgumentList localhost -NoNewWindow -PassThru -Wait -RedirectStandardOutput stdout.txt -RedirectStandardError stderr.txt
7 votes
Dans ce cas précis, avez-vous vraiment besoin de Start-process ?...
$process= ping localhost
# enregistrerait la sortie dans la variable de processus.1 votes
C'est vrai. Je cherchais un moyen plus propre de gérer les retours et les arguments. J'ai fini par écrire le script comme vous l'avez montré.
0 votes
@mjsr Un moyen d'obtenir la sortie et le ExitCode en le faisant sans Start-process ? J'ai besoin de savoir si la commande a réussi, mais ce serait bien de passer par la sortie pour le message d'erreur.