Angenommen, ich möchte die VMs in meinem Abonnement auszuschalten alle, kann ich so etwas wie tun:Erhalten Sie Job-Eingang oder Daten an sie übergeben
Get-AzureRmVm | Stop-AzureRmVM -Force -AsJob
Das fast augenblicklich geschehen würde, und wird eine Reihe von Arbeitsplätzen schaffen . Das einzige Problem mit diesen Jobs ist, dass ich nicht entziffern kann, was jeder Job gemacht hat. Alle sehen gleich aus.
State : Completed
HasMoreData : True
Location : localhost
StatusMessage : Completed
CurrentPSTransaction :
Host : System.Management.Automation.Internal.Host.InternalHost
Command : Stop-AzureRmVM
JobStateInfo : Completed
Finished : System.Threading.ManualResetEvent
InstanceId : dc0da9c0-5dc7-4186-86b8-c53c21e8c690
Id : 2
Name : Long Running Operation for 'Stop-AzureRmVM'
PSJobTypeName : AzureLongRunningJob`1
Output : {Microsoft.Azure.Commands.Compute.Models.PSComputeLongRunningOperation}
Debug : {[AzureLongRunningJob]: Starting cmdlet execution, setting for cmdlet confirmation required:
'False', [AzureLongRunningJob]: Completing cmdlet execution in RunJob
Und die Ausgabe sieht wie folgt aus:
OperationId :
Status : Succeeded
StartTime : 30/12/2017 12:03:58
EndTime : 30/12/2017 12:04:00
Error :
Was mich keine Möglichkeit, auf dem um herauszufinden, gibt VM dieser Job arbeitete.
Ich habe versucht, die Job-Eigenschaften mit Get-Job | Get-Member -Force
, aber ich konnte nichts finden, das würde mir helfen (Befehl, 'Jobstatistik', Informationen, usw.). Mit Blick auf die System.Management.Automation
Namespace gab mir auch keine Ideen, wie Sie diese Daten erhalten.
Ich bin auf der Suche nach einer Möglichkeit zu überprüfen, was an den Job übergeben wird.
Das ist eine falsche Annahme, leider. Sie geben nur das einzelne Objekt zurück: 'Microsoft.Azure.Commands.Compute.Models.PSComputeLongRunningOperation' und dieses Objekt enthält keine aussagekräftigen Daten. und ja, mir ist das 'rcjb'-Cmdlet bekannt – 4c74356b41