其中一个Powershell命令在脚本中不起作用,但在命令提示符下运行时起作用
我有以下两个命令 命令1:其中一个Powershell命令在脚本中不起作用,但在命令提示符下运行时起作用,powershell,powershell-3.0,Powershell,Powershell 3.0,我有以下两个命令 命令1: Get-QCSyncHistoryStep -Workflow "CSV2AD" -Name "Provision from CSV to 31AD" -Count 1 | ForEach {$_.SuccessOperations} | Out-File c:\scripts\temp1.txt 命令2: Get-QCSyncHistorySummaryRun * | Out-File c:\scripts\temp2.txt 命令1仅在powershell提示
Get-QCSyncHistoryStep -Workflow "CSV2AD" -Name "Provision from CSV to 31AD" -Count 1 | ForEach {$_.SuccessOperations} | Out-File c:\scripts\temp1.txt
命令2:
Get-QCSyncHistorySummaryRun * | Out-File c:\scripts\temp2.txt
命令1仅在powershell提示符下工作,但不能作为脚本使用。其中as命令2在提示符和脚本文件中使用时都起作用
如果我在脚本文件中同时运行这两个命令,则命令1不会将任何内容写入文件中,其中as command 2起作用
需要帮助破译这个问题
谢谢。您的问题可能是Out File会覆盖目标文件的内容,除非您指定-Append开关,如果文件不存在,仍然可以使用该开关。我不熟悉Get-QCSyncHistory*cmdlet或它们的输出它们是您自己的函数吗?但是我假设如果您通过foreach循环将输出中的对象管道化,并且最终的对象具有空值SuccessOperations参数,然后,您将有效地擦除您一直试图写入的文件。删除管道并开始将结果分配给变量。检查哪个赋值提供空值,并在那里开始调试。