我创建了一个用于更新SharePoint列表的powershell脚本。当我运行它时,显示所有后台处理到控制台,例如所有列表架构信息。我希望它只显示创建的脚本输出(只有Write-Host的输出)而不是开箱即用的后端处理。有没有可用于防止这种情况的命令?
当我在脚本
中使用ArrayList的.add方法时,它显示如下计数0
1
2
3
,当我将List项目存储在脚本中的某个变量中时,它显示了List XML Schema,如下所示:
Sealed : False
Version : 28
DisplayFormTemplateName : DocumentLibraryForm
EditFormTemplateName : DocumentLibraryForm
NewFormTemplateName : DocumentLibraryForm
NewFormUrl :
MobileNewFormUrl :
EditFormUrl :
MobileEditFormUrl :
DisplayFormUrl :
MobileDisplayFormUrl :
Id : 0x010100C568DB52D9D0A14D9B2FDCC96666E9F2007948130EC3DB064584E219954237AF39009893A4DD0A05487AAE05EAE8D183333C003933922476541344B8A065CBACE8178D
ReadOnly : False
Name : NewsPage
NameResource : Microsoft.SharePoint.SPUserResource
FeatureId : 00000000-0000-0000-0000-000000000000
Description : Used to create news articles.
JSLink :
DescriptionResource : Microsoft.SharePoint.SPUserResource
Hidden : False
答案 0 :(得分:1)
一些.Net方法和外部程序将退出代码和其他输出输出到stdout。
您可以将void关键字添加到arraylist" Add"命令或将其传递给Out-Null
$MyList = [System.Collections.ArrayList]@()
1..10 | % { $MyList.Add($_) } # outputs 0 to 9
1..10 | % { [void]$MyList.Add($_) } # no output
1..10 | % { $MyList.Add($_) | Out-Null } # no output