PowerShellを使用してSQLストアドプロシージャを呼び出します。出力行はPowerShellで実行可能であるため、出力の完全なセットを.ps1ファイルにリダイレクトします。
> output.ps1を使用しようとしていますが、動作しますが、出力ファイルをチェックしています。実際の出力を置き換えるために、多くの「...」が含まれています。
完全な出力をエクスポートする方法は?また、ヘッダーをストライプオフしますか?
ありがとう。
PowerShellを使用してSQLストアドプロシージャを呼び出します。出力行はPowerShellで実行可能であるため、出力の完全なセットを.ps1ファイルにリダイレクトします。
> output.ps1を使用しようとしていますが、動作しますが、出力ファイルをチェックしています。実際の出力を置き換えるために、多くの「...」が含まれています。
完全な出力をエクスポートする方法は?また、ヘッダーをストライプオフしますか?
ありがとう。
これは、ストアドプロシージャをどのように呼び出すかによって異なります。PowerShell内で呼び出す場合は、出力を収集できるはずなので、別のタスクとして独自のウィンドウで開始していると思います。実際の例がない場合、tasklist.exeコマンドから出力を収集する方法は次のとおりです。あなたはそれが適用できると思うかもしれません。
cls
$exe = 'c:\Windows\System32\tasklist.exe'
$processArgs = '/NH'
try {
Write-Host ("Launching '$exe $processArgs'")
$info = New-Object System.Diagnostics.ProcessStartInfo
$info.UseShellExecute = $false
$info.RedirectStandardError = $true
$info.RedirectStandardOutput = $true
$info.RedirectStandardInput = $true
$info.WindowStyle = [System.Diagnostics.ProcessWindowStyle]::Hidden
$info.CreateNoWindow = $true
$info.ErrorDialog = $false
$info.WorkingDirectory = $workingDir
$info.Filename = $exe
$info.Arguments = $processArgs
$process = [System.Diagnostics.Process]::Start($info)
Write-Host ("Launched $($process.Id) at $(Get-Date)")
<#
$process.StandardOutput.ReadToEnd() is a synchronous read. You cannot sync read both output and error streams.
$process.BeginOutputReadLine() is an async read. You can do as many of these as you'd like.
Either way, you must finish reading before calling $process.WaitForExit()
http://msdn.microsoft.com/en-us/library/system.diagnostics.processstartinfo.redirectstandardoutput.aspx
#>
$output = $process.StandardOutput.ReadToEnd()
$process.WaitForExit() | Out-Null
Write-Host ("Exited at $(Get-Date)`n$output")
} catch {
Write-Host ("Failed to launch '$exe $processArgs'")
Write-Host ("Failure due to $_")
}
$output