Most scripts deal with more than one thing—lists of servers, lists of files, lookup codes, and more. To enable this, PowerShell supports many features to help you through both its language features and utility cmdlets.
PowerShell makes working with arrays and lists much like working with other data types: you can easily create an array or list and then add or remove elements from it. You can just as easily sort it, search it, or combine it with another array. When you want to store a mapping between one piece of data and another, a hashtable fulfills that need perfectly.
You want to create an array or list of items.
To create an array that holds a given set of items, separate those items with commas:
PS > $myArray = 1,2,"Hello World" PS > $myArray 1 2 Hello World
To create an array of a specific size, use the
PS > $myArray = New-Object string 10 PS > $myArray = "Hello" PS > $myArray Hello
To create an array of a specific type, use a strongly typed collection:
PS > $list = New-Object Collections.Generic.List[Int] PS > $list.Add(10) PS > $list.Add("Hello") Cannot convert argument "0", with value: "Hello", for "Add" to type "System .Int32": "Cannot convert value "Hello" to type "System.Int32". Error: "Input string was not in a correct format.""
To store the output of a command that generates a list, use variable assignment:
PS > $myArray = Get-Process PS > $myArray Handles ...