我在基于 TFS 2015 的部署期间运行 PowerShell 脚本。它不会运行,因为 PS 认为它需要用户交互,但是,当我将命令和参数复制并粘贴到 PS 控制台并直接调用它时,它完全按预期工作(没有用户输入)。
有什么建议么?谢谢。
这是顶部。由于许可原因,我无法包含更多内容:
[CmdletBinding()]
param(
[ValidateNotNullOrEmpty()]
[String]
$LocalDataPath, # .
[ValidateNotNullOrEmpty()]
[String]
$ApiEndpointUrlPrefix, # http://hostname/ReportServer
[ValidateNotNullOrEmpty()]
[String]
$DataSourceUrlRelPath = "Data Sources",
[ValidateNotNullOrEmpty()]
[String]
$DatasetUrlRelPath = "Datasets",
[ValidateNotNullOrEmpty()]
[String]
$ReportUrlRelPath = "Reports",
[ValidateNotNullOrEmpty()]
[String]
$RootUrlAbsPath = "/Root"
)
该错误是由脚本中的某些 cmdlet 或命令引起的(显示参数是红鲱鱼)。
寻找
Write-Host
,Remove-Item
等等。您可以尝试执行您的脚本,将
-NonInteractive
标志传递给 Powershell 解释器,或者为$ConfirmPreference
变量试验不同的值(例如None
)。