我正在运行PowerShell脚本,它自己调用另一个脚本。在第一个脚本中,当我放回echo时,一切正常,但我无法在第二个(“客户端”)脚本中获得任何回显以显示任何内容。
我如何获得回音工作?
我在Windows 7 Pro上使用PowerShell 2.0,使用PowerGUI。 (我也试过ISE,但没有用)
答案 0 :(得分:2)
您应该直接使用Write-Host而不是echo(它是Write-Output的别名)。
答案 1 :(得分:1)
您的脚本示例有助于提供准确的答案。也就是说,我尝试了嵌套脚本的Write-Output,一切似乎都适合我。
#Script1.ps1
Write-Output "Script 1"
Write-Output "Calling Script 2"
./Script2.ps1
#Script2.ps1
Write-Output "Script 2"
Write-Output "Script 2 End"
而且,输出:
PS> .\Script-one.ps1
Script 1
Calling Script 2
Script 2
Script 2 End
答案 2 :(得分:1)
您可以使用Write-Host
写入控制台(主机)
使用Write-Output
与Write-Host
似乎有些混淆(echo
是写输出的别名 - 您可以从Get-Alias中看到它)。 Write-Output
不只是写入控制台。来自文档:
将指定的对象发送到 管道中的下一个命令。如果 command是最后一个命令 管道,对象显示在 控制台。