Comment rediriger la sortie?
J'essaie de rediriger la sortie d'un script Powershell pour un fichier txt.
Dans la fenêtre Powershell, j'essaie:
.\script.ps1 > list.txt
Mais cela n'aide pas, toute sortie est toujours imprimé à la fenêtre.
J'ai ensuite essayé:
.\script.ps1 >& list.txt
Et eu cette erreur:
Missing file specification after redirection operator.
At line:1 char:21
+ .\script.ps1 > <<<< & list.txt
+ CategoryInfo : ParserError: (:) [], ParentContainsErrorRecordException
+ FullyQualifiedErrorId : MissingFileSpecification
Vous devez vous connecter pour publier un commentaire.
Si vous êtes à la sortie d'écriture en script.ps1 à l'aide de
Write-Host
(ou[Console]::WriteLine
), vous devrez soit changer ceux deWrite-Output
ou ce faire:Par la voie
>
est sucre syntaxique pourOut-File
, ils sont la même chose.Si la sortie que vous êtes désireux de capture est écrit à la console en utilisant Write-Host, vous avez besoin de changer que l'Écriture de Sortie.
Write-Host
sont fondamentalement la même chose.[Console]::Write
estWrite-Host -NoNewLine
Vous n'avez pas besoin de la
&
après la>
. Il est utilisé uniquement pour exécuter quelque chose.Si
script.ps1
est sortie à l'aide deWrite-Host
ou[Console]::WriteLine
vous devez le mettre à jour.Ici est un exemple de la mise à jour d'un
Write-Host
script outputable.Write-Host
.Write-Output
fonctionne très bien avec> list.txt
.