【问题标题】:No output from Powershell command when run from script vs cli从脚本与 cli 运行时,Powershell 命令没有输出
【发布时间】:2017-06-26 15:27:05
【问题描述】:

此命令在脚本中运行时不会将输出写入屏幕,但在 PowerShell ISE cli 中执行时有效:

$toptenseverity = $csvData | select Severity, Title -Unique | sort Severity -Descending | select -First 11
$toptenseverity

代码:

Write-Host "`r`nTop 10 most severe vulnerabilities:"
$toptenseverity = $csvData | select Severity, Title -Unique | sort Severity -Descending | select -First 11
$toptenseverity
Write-Host "Trying again to write output of toptenseverity using write host toptenseverity:"
Write-Host $toptenseverity
Write-Host "Trying again to write output of toptenseverity using write output toptenseverity:"
Write-Output $toptenseverity

输出:

Generating P1 report. Please wait...

Total P1 count:    352
Severity 5 total:  11
Severity 4 total:  16
Severity 3 total:  325

Top 10 most severe vulnerabilities:

Trying again to write output of toptenseverity using write host toptenseverity:
@{Severity=5; YouDon'tNeedToKnowThis} @{Severity=4; Title=YouDon'tNeedToKnowThis} @{Severity=4; Title=YouDon'tNeedToKnowThis
} @{Severity=4; Title=YouDon'tNeedToKnowThis} @{Severity=4; Title=YouDon'tNeedToKnowThis} 
Trying again to write output of toptenseverity using write output toptenseverity:

当我从 PS ISE 中的 cli 运行它时,我得到以下输出:

Severity Title                                                                                  
-------- -----                                                                                  
5        YouDon'tNeedToKnowThis                                                  
4        YouDon'tNeedToKnowThis
4        YouDon'tNeedToKnowThis                                    
4        YouDon'tNeedToKnowThis                             
4        YouDon'tNeedToKnowThis                               

【问题讨论】:

  • $toptenseverity | Format-TableWrite-Output $toptenseverity | Format-Table 给你你想要的?
  • 写入输出 $toptenseverity |格式表工作!谢谢你。现在,如何将您的回复标记为答案?
  • 太棒了!我已正确提交作为答案(不能接受 cmets - 只是赞成标记)

标签: powershell


【解决方案1】:

用途:

Write-Output $toptenseverity | Format-Table 

这会强制将对象格式化为表格,这是 ISE 中正在发生的事情(默认情况下)

【讨论】:

    猜你喜欢
    • 2014-10-27
    • 1970-01-01
    • 2021-09-13
    • 1970-01-01
    • 2011-06-11
    • 1970-01-01
    • 2016-10-06
    • 2023-03-21
    • 1970-01-01
    相关资源
    最近更新 更多