Wednesday, February 11, 2015

Microsoft Azure & PowerShell : Export the list of all "Azure VM DISK Images" list to CSV or HTML using PowerShell script.


How can I get a list of all “Microsoft Azure VM OS Image lists”, She asked me over the Phone.

Who? Who else! Our own “A! Murky Ana.”

I said: Yes, you can, you just need to use “Get-AzureVMImage” cmdlet , to use it just  install a “Azure PowerShell Module, and run the above cmdlet and that’s all you need to do.

A! Murky Ana. : Can we export the list of Azure VM OS DISK Images  to HTML format or in a .CSV format?

Me: Yes you can.

A! Murky Ana. : How?

Me: You just need to write a small function / script  to do that & a few tiny scripting techniques to do data manipulation.

A! Murky Ana. : Can you do it for me?

Me: No! it’s your quest, you have to deal with this.

A! Murky Ana. : Ok, let's make a deal, You show me once only , the first and the last time  to teach me how to do that, I won’t ask you again, I want to see if that kind of script we can write.

Me.: Ok, First and the last time.

I hang up the phone.

After one day, I call her and told her, did you saw the movie “Galaxy of the Guardian”?

A! Murky Ana. : No?

Me: Go a Get a DVD of it, it’s so cool movie.!

A! Murky Ana. : Don’t you suppose to show me something? A script to Export a Azure Virtual Image list to .CSV file?

Me. Yes, I know, I am sending you the screen sharing link by using ,  See it and I will walk through a script which I have written. Please download it from the below link

This is a script function, you can run the function simply by using  Export-AzureVMImageList ” than this will generate a list of all Azure Virtual Image list those are available in to a HTML page and the page will open automatically.


To know more about PowerShell Function, visit this link :  





If you want to export the Azure VM image list to the .CSV format, then just use the –CSV “Export-AzureVMImageList -CSV ” switch with the function and it will generate a .CSV file containing the same information.



Exporting the list either to .CSV or HTML is quite handy, so that you can search the name and DISK image of the OS easily which you want to create, after having a list, it’s a matter of sec milliseconds, copy and paste.,

Remember the download link:

This script by default export all files  in the user’s temp directory.

You can know about your temp directory by using $env:TEMP variable in the PowerShell console.




Just for your knowledge, there is three main part of the this current scripts.

1.    The Switch Parameter

2.    IF Else Statement

3.    The ForEach loop


The Switch Parameter




This works like a ON/Off switch. If you use the –CSV parameter with the function, the script set it ON ( $true) and export the Output in the CSV format.  Else it keep it in the OFF state ( $false).


To know more about Parameters visit this link :


The IF-ELSE  Statement




The IF block checks if the –CSV is ON or OFF, if the –CSV is present in function, then it will run the   IF block code to export the file to .CSV format, otherwise the ELSE block will run and export the file in the HTML format.


The ForEach loop.



By using For-Each loop , we are manipulation with data and saving it as a single line to a  variable $body1


That’s it J , you know the trick, Now download the script and play with it. Try to change the default path. Try to change the File Name, or try to add some new parameters.


Check the video below on "How you can run the script".





Me: Happy?


A! Murky Ana. :  Yes,


Me. : Go and now learn more about "Microsoft Azure and PowerShell"


and she hung up the phone!!!


HOW RUDE............


* All characters appearing in this work are fictitious Any resemblance to real persons, living or dead, is purely coincidental.



Aman Dhally
If you like, you can follow me on Twitter and Facebook. You can also check my “You Tube channel for PowerShell video tutorials. You can download all of my scripts from “Microsoft TechNet Gallery”.











  1. • Excellent…Amazing…. I’m satisfied to find so many helpful information here within the put up, for latest PHP jobs in Hyderabad we want work out extra strategies in this regard, thanks for sharing. Azure Online Training Bangalore

  2. • Nice and good article. It is very useful for me to learn and understand easily. Thanks for sharing your valuable information and time. Please keep updatingAzure Online Training

  3. • Nice and good article. It is very useful for me to learn and understand easily. Thanks for sharing your valuable information and time. Please keep updatingAzure Online Training

  4. Really nice information thanks for providing for more updates on Azure Azure Online Training Hyderabad