power shell 调用一个bat外部程序,预期的效果和直接点击bat文件执行的效果不一样,请问是怎么回事?


power shell 调用一个bat外部程序,预期的效果和直接点击bat文件执行的效果不一样,请问是怎么回事?

我试了如下几种方法:

<#
“start cmd” | Out-File D:\ezGlobalSystem\Database\AdapterDB\ManualPublish.bat -Encoding ascii -Append
C:\PS> “D:\ezGlobalSystem\Database\AdapterDB\ManualPublish.bat” | invoke-expression
#>

<#
$exe=”D:\ezGlobalSystem\Database\AdapterDB\ManualPublish.bat”
$n=”bits”
& $exe qc $n
#>

<#
$process = new-object System.Diagnostics.Process
$process.StartInfo.FileName = “D:\ezGlobalSystem\Database\AdapterDB\ManualPublish.bat”
$process.StartInfo.Arguments = ” /c dir|pause”
$process.StartInfo.UseShellExecute = 0
$process.StartInfo.RedirectStandardInput = 0
$process.StartInfo.RedirectStandardOutput = 1
$process.StartInfo.RedirectStandardError = 1
$process.StartInfo.CreateNoWindow = 1
$process.StartInfo.WindowStyle = [System.Diagnostics.ProcessWindowStyle]::Hidden;
$process.Start()
$error_info = $process.StandardError.ReadToEnd()
$result = $process.StandardOutput.ReadToEnd()
#>

发表评论

您的电子邮箱地址不会被公开。 必填项已用 * 标注