mevans
06-23-2015, 01:04 PM
When I pass command-line arguments to PowerShell, I can see them if I do this:
foreach ($i in $args)
{Write-Host $i}
And $args.count returns the correct number.
However, whenever I try to access a specific arg, I always get an empty value. For example:
Write-Host $args[0]
Write-Host $args[1]
This always generates nothing. Even looking at various posts online, I can see maybe I needed to do it like this:
Write-Host $($args[0])
Write-Host $($args[1])
But that still returns nothing.
I finally found one notation that works:
param(
$a,
$b
)
Write-Host $a
Write-Host $b
What I don't understand is why I can't access the values from $args[0], even though I can iterate through the array and get the values?
foreach ($i in $args)
{Write-Host $i}
And $args.count returns the correct number.
However, whenever I try to access a specific arg, I always get an empty value. For example:
Write-Host $args[0]
Write-Host $args[1]
This always generates nothing. Even looking at various posts online, I can see maybe I needed to do it like this:
Write-Host $($args[0])
Write-Host $($args[1])
But that still returns nothing.
I finally found one notation that works:
param(
$a,
$b
)
Write-Host $a
Write-Host $b
What I don't understand is why I can't access the values from $args[0], even though I can iterate through the array and get the values?