首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Get-AzureRmResource :找不到与参数名“”Tag“”匹配的参数

Get-AzureRmResource :找不到与参数名“”Tag“”匹配的参数
EN

Stack Overflow用户
提问于 2018-07-24 20:37:57
回答 1查看 2.1K关注 0票数 1

所以我完全被这个问题难住了。

问题所在

我有一个powershell脚本(一个.ps1文件),它在某些时候执行以下操作:

代码语言:javascript
复制
Import-Module AzureRM

Login-AzureRmAccount -Credential $azureCredentials | out-null
Select-AzureRmSubscription -SubscriptionId $azureSubscriptionId -TenantId $azureTenantId | out-null

Write-Host (ConvertTo-Json((Get-AzureRmResource -Tag @{ "env"="dev"}) | Select Name, Location))

我通过执行以下操作在.NET控制台应用程序中运行该脚本:

代码语言:javascript
复制
Dim process = New Process() With {.StartInfo = New ProcessStartInfo With {
    .FileName = "powershell.exe",
    .Arguments = "-ExecutionPolicy ByPass -file """ & _powershellScriptsPath & "\get-webapps.ps1",
    .UseShellExecute = False,
    .RedirectStandardOutput = True,
    .RedirectStandardError = True
}}

无论是从ISE还是从控制台应用程序运行,该脚本在我的笔记本电脑上都运行得很好。

然后在我的桌面上,它在ISE中工作正常,但在控制台应用程序中失败,并显示以下错误消息:

代码语言:javascript
复制
Get-AzureRmResource : A parameter cannot be found that matches parameter name 'Tag'.

我搞不懂这件事。

一些见解

我的$PSVersionTable在两台计算机上是相同的:

代码语言:javascript
复制
Name                           Value                                                                                                                                                                                                                                                
----                           -----                                                                                                                                                                                                                                                
PSVersion                      5.1.17134.165                                                                                                                                                                                                                                        
PSEdition                      Desktop                                                                                                                                                                                                                                              
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0...}                                                                                                                                                                                                                              
BuildVersion                   10.0.17134.165                                                                                                                                                                                                                                       
CLRVersion                     4.0.30319.42000                                                                                                                                                                                                                                      
WSManStackVersion              3.0                                                                                                                                                                                                                                                  
PSRemotingProtocolVersion      2.3                                                                                                                                                                                                                                                  
SerializationVersion           1.1.0.1

我的笔记本电脑有6.1.0版的AzureRm模块:

代码语言:javascript
复制
PS C:\WINDOWS\system32> Get-InstalledModule -Name AzureRm

Version    Name                                Repository           Description                                                                                                                                                                                                     
-------    ----                                ----------           -----------                                                                                                                                                                                                     
6.1.0      AzureRM                             PSGallery            Azure Resource Manager Module

而我的桌面版本是6.5.0:

代码语言:javascript
复制
PS C:\WINDOWS\system32> Get-InstalledModule -Name AzureRm

Version    Name                                Repository           Description                                                                                                                                                                                                     
-------    ----                                ----------           -----------                                                                                                                                                                                                     
6.5.0      AzureRM                             PSGallery            Azure Resource Manager Module

所以这里有不同的版本,但是-Tag确实存在于6.1.0中,因为在Powershell ISE中脚本可以工作。它必须使用6.1.0,因为它似乎是唯一安装的版本(?)。

此外,控制台应用程序在两个Visual Studios (笔记本电脑/台式机)中运行相同的配置(至少据我所知)。值得注意的是,它被编译为AnyCPU,并在两台计算机上以32位运行。

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51498836

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档