Largeur de la colonne de sortie Powershell

Si j'ai un exe:.exe et son stdout sont redirigés vers un fichier ie:

out.exe > $file

maintenant si je le fais, il ne sort que 80 colonnes par ligne dans le fichier

y a-t-il un moyen de rendre la sortie standard plus large dans la colonne de la console? est-il de la sortir.exe thats en quelque sorte de jouer avec les colonnes.. dans mon cas jutilise fxcompcmd.exe

26
demandé sur maxfridbe 2009-06-11 04:32:25

4 réponses

j'ai rencontré un problème similaire il y a quelques temps. Voici ce que j'ai fait pour le réparer:

# Update output buffer size to prevent clipping in Visual Studio output window.
if( $Host -and $Host.UI -and $Host.UI.RawUI ) {
  $rawUI = $Host.UI.RawUI
  $oldSize = $rawUI.BufferSize
  $typeName = $oldSize.GetType( ).FullName
  $newSize = New-Object $typeName (500, $oldSize.Height)
  $rawUI.BufferSize = $newSize
}

il définit simplement une nouvelle largeur de 500 caractères sur le tampon de sortie RawUI de l'hôte (bien que, puisque nous exécutons notre build dans plusieurs environnements, et que nous ne voulions pas que le script échoue simplement parce qu'il ne pouvait pas rendre la sortie un peu plus grande, le code est plutôt défensif).

si vous exécutez dans un environnement qui définit toujours RawUI (et la plupart le font), le code peut être grandement simplifié:

$Host.UI.RawUI.BufferSize = New-Object Management.Automation.Host.Size (500, 25)
34
répondu Emperor XLII 2009-07-22 13:42:32

les Deux out-file et out-string applets de commande ont un width paramètre:

out.exe | out-file -width 132 -filePath $file
11
répondu Lee 2009-06-11 00:38:17

si vous parlez de Windows PowerShell-il suffit d'ouvrir "propriétés > Layout" augmenter la taille du tampon + la taille de la fenêtre

enter image description here

0
répondu Edmund Sulzanok 2015-02-20 17:56:46

dans mon script powershell j'ai placé la première ligne à ne pas faire les retours de chariot la deuxième ligne, j'ai fait un retour manuel.

(dans une boucle)

Write-Host -nonewline "$var1;$var2"

Write-Host "`r"

Qui l'emportait sur le problème d'avoir ma ligne enveloppé mais encore de faire un retour après chaque enregistrement individuel.

0
répondu Dave 2017-11-07 17:30:47