我試圖用PowerShell停止或啓動Azure虛擬機。我不是很PowerShell中經歷了那麼我寫了一個簡單的腳本作爲測試:未指定Azure PowerShell證書
Import-Module "C:\Program Files (x86)\Microsoft SDKs\Windows Azure\PowerShell\Azure\Azure.psd1"
$subID = "<GUID>"
$thumbprint = "<Thumbprint>"
$subscriptionName = "testAzure"
$myCert = Get-Item cert:\\CurrentUser\My\$thumbprint
$vmName = "<vm name>"
Set-AzureSubscription –SubscriptionName $subscriptionName -SubscriptionId $subID -Certificate $myCer
Select-AzureSubscription -SubscriptionName $subscriptionName
Get-AzureSubscription -Current
我創建了我的電腦一.cer證書,我導出,然後在Azure的進口(我使用http://msdn.microsoft.com/en-us/library/windowsazure/gg551722.aspx確切的例子) 。當我寫主機的$ myCert可變我得到迴應:
[Subject] CN=testAzure
[Issuer] CN=testAzure
[Serial Number] --serialnumber--
[Not Before] 29-6-2013 15:27:26
[Not After] 1-1-2040 00:59:59
[Thumbprint] --thumbprint--
當我運行該腳本,我得到以下錯誤:
Get-AzureSubscription : You MUST specify a certificate. Call Set-AzureSubscription and Select-AzureSubscription first. At D:\Users\foobar\Desktop\test.ps1:23 char:1 + Get-AzureSubscription -Current + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : CloseError: (:) [Get-AzureSubscription], ArgumentException + FullyQualifiedErrorId : Microsoft.WindowsAzure.Management.Subscription.GetAzureSubscriptionCommand
我想不出什麼,我做錯了什麼?有人有建議嗎?
'Set-StrictMode -Version Latest'是你的朋友。養成將它作爲所有腳本的第一行的習慣。 –
哈哈,我的天啊,我一直在掙扎幾個小時。感謝Gaurav Mantri – ydd1987