繁体   English   中英

Powershell 重定向脚本 Output

[英]Powershell Redirect Script Output

我有两个 Powershell 脚本 - 第一个脚本我们称之为 Script_A,第二个脚本我们称之为 Script_B。 这两个脚本可以总结如下:

Script_A - 调用 Script_B,在过程中传递一些参数,例如:

.\Script_B.ps1 $Param1 $Param2

Script_B - 通过使用 Script_A 发出的两个参数,即 $Param1 和 $Param2,执行 powershell function 和其他逻辑

我现在想做的是将控制台上显示的结果重定向到一个 output 文件。 我已经尝试了使用 Out-File cmdlet 和重定向字符“>>”的所有方法,但仍然无法获得所需的结果。

有什么建议么?

当你有 Powershell 时,你应该尽可能避免使用控制台 output 作为输入。

从此处的 Script1 调用 Script2 的示例。 Script2 将 powershell object 返回给 Script1,这不是“哑字符串”——它是不需要解析的结构化数据。

#SCRIPT1.ps1
$Param1 = 'Jane'
$Param2 = 'Don Pedro'
$result = & 'D:\Script2.ps1' -Name $Param1 -Surname $Param2
$result | ConvertTo-Json | Out-String

#SCRIPT2.ps1
Param(
    [String]$Name,
    [String]$Surname)
return [PSCustomObject]@{
    Name = $Name.ToLowerInvariant(); 
    Surname = $Surname.ToUpperInvariant(); 
    ID = (Get-Random)}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM