none
Tabellen und foreach, Daten ausgeben, nicht einfügen RRS feed

  • Frage

  • Mein Ziel ist es, von einer Tabelle aus mit mehreren Daten drin, jede einzelne auszulesen und auch auszugeben (am besten gespeichert in einer Variabel). Ich kann euch dafür ein Beispiel aus Lua angeben, denn nur da weiss ich wie is funktioniert:

    Table = {"Value1", "Value2", "Value3"}

    for i = 1, #Table do <--Hier wird "i" jeweils als Zahl definiert und beginnt mit 1, sie wird jeweils um 1 erhöht, bis es die Anzahl der Objekte in der Tabelle (#Table) erreicht hat.
    print(Table[i]) <--Hier wird dann jeweils die Stelle des Values in der Tabelle ausgegeben.
    end

    Output:

    Value1
    Value2
    Value3

    In etwa so wird das ausgelesen:

    print(Table[1])
    print(Table[2])
    print(Table[3])

    also:

    print("Value1")
    print("Value2")
    print("Value3")

    Der Sinn dieser Sache ist, dass ich ca. 30-50 Elemente in der Tabelle haben werde, die man dann direkt in der Tabelle selber rauslöschen kann, wenn man sie nicht will, und nicht erst alle 50 Zeilen durchblättern muss, und diese dann entfernen muss.

    Weiss einer wie man das in PowerShell umwandeln kann?

    Im foreach sollte folgende Zeile immer wieder ausgeführt werden:

    &"C:\Windows\System32\PkgMgr.exe"/iu:[ELEMENTDERTABELLEHIER]


    Lua Programmer & Powershell Newcomer | Location: Switzerland


    Freitag, 21. September 2012 12:50

Antworten

  • Tabelle ist hier, glaube ich, das falsche Wort. Da das, was du suchst, nur aus einer Spalte besteht. Ich würde das Liste nennen. In den meisten Programiersprachen nennt man das Array;-)

    # Array erstellen $Arr = 'Hans','Werner','Willi'

    $Arr[1] # Werner
    $Arr[0] # Hans
    $Arr[2] # Willi

    # jedes element im Array durchlaufen Foreach ($Wert in $Arr) { & "C:\Windows\System32\PkgMgr.exe"/iu:$Wert } # Der Komma ,-operator # Beschreibung: Als binärer Operator erstellt das Komma ein # Array. Als unärer Operator erstellt das Komma ein Array mit einem # einzelnen Element. Fügen Sie das Komma vor dem Element ein. Beispiele: # UND IMMER DIE POWERSHELL HILFE LESEN ;-)) Get-Help about_Arrays -Full



    Please click “Mark as Answer” if my post answers your question and click Vote as Help if my Post helps you.
    Bitte markiere hilfreiche Beiträge von mir als Hilfreich und Beiträge die deine Frage ganz oder teilweise beantwortet haben als Antwort.
    My PowerShell Blog http://www.admin-source.info
    [string](0..21|%{[char][int]([int]("{0:d}" -f 0x28)+('755964655967-86965747271757624-8796158066061').substring(($_*2),2))})-replace' '

    Freitag, 21. September 2012 13:05
  • Das sieht in Powershell ganz ähnlich aus:

    # Array
    $tabelle  = ( "Value1","Value3","Value4","Value5")
    
    # Zugriff auf die Werte
    foreach ( $wert in $tabelle) {
    	& "C:\Windows\System32\PkgMgr.exe"/iu:$wert
    }
    

    Grüße, Denniver





    Blog: http://bytecookie.wordpress.com

    Hilf mit und markiere hilfreiche Beiträge als "Hilfreich" und Beiträge die deine Frage ganz oder teilweise beantwortet haben als "Antwort".

    Freitag, 21. September 2012 13:05
    Moderator

Alle Antworten

  • Tabelle ist hier, glaube ich, das falsche Wort. Da das, was du suchst, nur aus einer Spalte besteht. Ich würde das Liste nennen. In den meisten Programiersprachen nennt man das Array;-)

    # Array erstellen $Arr = 'Hans','Werner','Willi'

    $Arr[1] # Werner
    $Arr[0] # Hans
    $Arr[2] # Willi

    # jedes element im Array durchlaufen Foreach ($Wert in $Arr) { & "C:\Windows\System32\PkgMgr.exe"/iu:$Wert } # Der Komma ,-operator # Beschreibung: Als binärer Operator erstellt das Komma ein # Array. Als unärer Operator erstellt das Komma ein Array mit einem # einzelnen Element. Fügen Sie das Komma vor dem Element ein. Beispiele: # UND IMMER DIE POWERSHELL HILFE LESEN ;-)) Get-Help about_Arrays -Full



    Please click “Mark as Answer” if my post answers your question and click Vote as Help if my Post helps you.
    Bitte markiere hilfreiche Beiträge von mir als Hilfreich und Beiträge die deine Frage ganz oder teilweise beantwortet haben als Antwort.
    My PowerShell Blog http://www.admin-source.info
    [string](0..21|%{[char][int]([int]("{0:d}" -f 0x28)+('755964655967-86965747271757624-8796158066061').substring(($_*2),2))})-replace' '

    Freitag, 21. September 2012 13:05
  • Das sieht in Powershell ganz ähnlich aus:

    # Array
    $tabelle  = ( "Value1","Value3","Value4","Value5")
    
    # Zugriff auf die Werte
    foreach ( $wert in $tabelle) {
    	& "C:\Windows\System32\PkgMgr.exe"/iu:$wert
    }
    

    Grüße, Denniver





    Blog: http://bytecookie.wordpress.com

    Hilf mit und markiere hilfreiche Beiträge als "Hilfreich" und Beiträge die deine Frage ganz oder teilweise beantwortet haben als "Antwort".

    Freitag, 21. September 2012 13:05
    Moderator
  • Super danke! Hätte nich gedacht, dass es wirklich so ähnlich ist. Ich werde es gleich mal ausprobieren.

    Wegen dem "Get-Help". Bei mir hängt das ab und zu, keine Ahnung warum. Auch "Update-Help". Muss mal schauen wie ich das zum laufen bringe.

    Und mit dem Tabelle/Array muss ich dir zustimmen. Die verwechsle ich des öfteren.


    Lua Programmer & Powershell Newcomer | Location: Switzerland


    Montag, 24. September 2012 06:28
  • Mit dem Get-Help unter PowerShell 3.0 ist das so eine sache.
    Da es noch keine deutsche PowerShell Hilfe für PS 3 gibt, ist die deutsche Hilfe die man per default zu sehen bekommt nicht wirklich hilfreich:
    Bei PowerShell 3.0 müsste man immer den -Online parameter verwenden um die Englische Hilfe abzurufen.

    Oder du stellst dein Windows System auf English um ;-)


    Please click “Mark as Answer” if my post answers your question and click Vote as Help if my Post helps you.
    Bitte markiere hilfreiche Beiträge von mir als Hilfreich und Beiträge die deine Frage ganz oder teilweise beantwortet haben als Antwort.
    My PowerShell Blog http://www.admin-source.info
    [string](0..21|%{[char][int]([int]("{0:d}" -f 0x28)+('755964655967-86965747271757624-8796158066061').substring(($_*2),2))})-replace' '


    Montag, 24. September 2012 07:34
  • Genau. :)

    Lua Programmer & Powershell Newcomer | Location: Switzerland

    Montag, 24. September 2012 07:37