How to pick certain word from an array?

This topic contains 4 replies, has 4 voices, and was last updated by  nitheesh babu 1 year, 10 months ago.

  • Author
  • #53177

    nitheesh babu

    I am trying to return certain column of an array

    My array looks like this(with all these number of spaces in between):
    Soft One server01 1156
    Soft One server04 1172
    Soft One server03 1137
    Soft One server02 1184

    I only need to read the value of last column(that is the number) and supply it for other commands.

    $xaload = qfarm /load /continue /app "Soft One" 
    for ($i = 4; $i -lt $xaload.Length; $i++)
       $line =  ([string]$xaload[$i]).Split(',')[0];
       $line.split()[0] #what number I should give in the square braces to get the last column value only?
    #when I select 0 it returns the first word of each line which is "soft"
    #when I select 1 it returns the second word which is"one"

    Thanks in advance for attending.

  • #53186

    Craig Duff

    You can count backwards from the end with negatives, so -1

  • #53193

    Rob Simmers

    If you always want the last item, then you typically use upperbound to get highest part of the array. In this case, you have 4 items in the array, so you could also use a static index value like $arrRow[3].

    $array = @(
    "Soft One server01 1156",
    "Soft One server04 1172",
    "Soft One server03 1137",
    "Soft One server02 1184"
    $results = foreach ($row in $array) {
        $arrRow = $row -Split " "
        $arrRow[$arrRow.Count -1]
        $arrRow[$arrRow.Length -1]
  • #53221

    Daniel Krebs

    Have you looked at using the Citrix XenApp PowerShell SDK and its cmdlets to get the details as proper PowerShell objects instead of doing prayer based text parsing of the qfarm command line tool output?

    • This reply was modified 1 year, 10 months ago by  Daniel Krebs.
  • #53223

    nitheesh babu

    Thanks Craig. Thanks Rob. That was really helpful.

You must be logged in to reply to this topic.