代码如下
var mySchema = new Schema({
_id: String,
// Other fields
});
我需要将$rgName = "my-rg"
$nameprefix = "vmtest"
##(following statement creates storage account with nameprefix followed by randomly generated string)
New-AzureRmResourceGroupDeployment -ResourceGroupName $rgName -TemplateFile "C:\YourpathtoTemplates\Template.json" -storageNamePrefix $nameprefix -storageSKU Standard_LRS
##Here is the problem statement
$tsaname = Get-AzureRmStorageAccount -ResourceGroupName $rgname | select
StorageAccountName | Where-Object {$_.StorageAccountName -like
"$nameprefix*"}
的值传递给另一个命令,而是将其$tsaname
提取,这会导致错误
我们当前的解决方法是使用split
来传递值@{StorageAccountName=vmtest4rncl5tyt798}
返回所需的值$tsaname1 = ($tsaname -split "(?=$nameprefix)"| Select -last 1).Trim("}")
有更好的方法吗?
使用以下语句来帮助排除故障
vmtest4rncl5tyt798
答案 0 :(得分:0)
您需要展开属性StorageAccountName:
$tsaname = Get-AzureRmStorageAccount -ResourceGroupName $rgname `
| Where-Object -Property StorageAccountName -like -Value "$nameprefix*" `
| Select-Object -ExpandProperty StorageAccountName
这将返回String
而不是具有属性的对象。
或者您也可以使用$tsaname.StorageAccountName