Write-Verbose output that doesn't wrap to command width in Powershell
Here is a very simple workaround based on Write-Host
which does not have such a problem. In the beginning of the session install/dot-source the replacement of the default Write-Verbose
:
function global:Write-Verbose( [string] $Message){ # check $VerbosePreference variable if ($VerbosePreference -ne 'SilentlyContinue') { # do this via Write-Host Write-Host "VERBOSE: $Message" -ForegroundColor 'Yellow' }}
Then this works as needed:
$VerbosePreference = 'Continue'Start-Transcript -Path .\RunUnitTests.logWrite-Verbose ("verbose writes five million character lines and stuff. " * 20)
That is: it takes into account $VerbosePreference
, it writes to host in yellow, transcript output is not wrapped and it is still marked VERBOSE.
**********************Windows PowerShell Transcript StartStart time: 20101105055855**********************Transcript started, output file is .\RunUnitTests.logVERBOSE: verbose writes ... <long line text> ... and stuff.**********************Windows PowerShell Transcript EndEnd time: 20101105055855**********************