none
Sort-Object -Descending " RRS feed

  • Frage

  •  

     $nr1 = (Get-Random -Minimum 1 -Maximum 49)
     $nr2 = (Get-Random -Minimum 1 -Maximum 49)
     $nr3 = (Get-Random -Minimum 1 -Maximum 49)
     $nr4 = (Get-Random -Minimum 1 -Maximum 49)
     $nr5 = (Get-Random -Minimum 1 -Maximum 49)
     $nr6 = (Get-Random -Minimum 1 -Maximum 49 ) #}

    Sort-Object -Descending "$nr1 $nr2 $nr3 $nr4 $nr5 $nr6"
    "$nr1 $nr2 $nr3 $nr4 $nr5 $nr6"  > c:\tool\nr1.txt

    kann mir bitte jemand helfen

    ich versuche hier die 6 ziffern zu sortieren und nach der sortierung in die datei auszugeben

    wenn ich nicht formatiere klappt es

    sobald ich formatiere wird entweder unsortiert in datei ausgegeben oder gar nicht, hab schon alles möglich probiert

    hat jemand eine idee?

    Freitag, 30. August 2019 08:07

Antworten

  • Moin,

    der Ausdruck in doppelten Anführungszeichen ist ein STRING. Was willst Du da noch sortieren? PowerShell kann ja nicht ahnen, dass da eine Struktur drin ist ;-)

    Wie wäre es mit einem ordentlichen Array:

    $nr = @()
    (1..6) | foreach { $nr += (Get-Random -Minimum 1 -Maximum 49)}
    ($nr | Sort-Object -Descending) -join " " | Out-File c:\tool\nr1.txt

    Da kannst Du auch die Anzahl der Element schnell ändern, falls es einmal nötig werden sollte...


    Evgenij Smirnov

    http://evgenij.smirnov.de

    Freitag, 30. August 2019 08:16

Alle Antworten

  • Moin,

    der Ausdruck in doppelten Anführungszeichen ist ein STRING. Was willst Du da noch sortieren? PowerShell kann ja nicht ahnen, dass da eine Struktur drin ist ;-)

    Wie wäre es mit einem ordentlichen Array:

    $nr = @()
    (1..6) | foreach { $nr += (Get-Random -Minimum 1 -Maximum 49)}
    ($nr | Sort-Object -Descending) -join " " | Out-File c:\tool\nr1.txt

    Da kannst Du auch die Anzahl der Element schnell ändern, falls es einmal nötig werden sollte...


    Evgenij Smirnov

    http://evgenij.smirnov.de

    Freitag, 30. August 2019 08:16
  • Code bitte in Zukunft als Code formatieren: How to Use the Code Feature in a TechNet Forum Post.

    Danke


    Live long and prosper!

    (79,108,97,102|%{[char]$_})-join''

    Freitag, 30. August 2019 08:30
  • ich will bewusst keinen string

    ich habs auch mit runden klammern etc versucht, alles daneben

    sobald formatiert ist wird nicht mehr in die datei geschrieben

    unformatiert wird in die datei geschrieben, ich verstehs nicht, sorry

    Freitag, 30. August 2019 09:23
  • danke, damit geht :)

    ich versuchs grade zu lernen und laut buch sollte es so funktionieren wie ich gemacht hatte

    Freitag, 30. August 2019 09:28
  • sorry, habe mich verschrieben, ich will bewusst kein ARRAY
    Freitag, 30. August 2019 09:29
  • Warum solltest du kein Array wollen? Ein Array kannst du jederzeit einfach als String ausgeben und beliebig sotrieren, filtern etc. Einen String hingegen musst du aber vor jeglichen Operationen die sich auf die einzelnen Teile beziehen (wie Sortierung) erstmal in ein Array (oder ein anderes Obekt) verwandeln.
     

    Blog: http://www.bytecookie.de

    Powershell Code Manager: Link
    (u.a. Codesnippets verwalten + komplexe Scripte graphisch darstellen)

    Hilf mit und markiere hilfreiche Beiträge mit dem "Abstimmen"-Button (links) und Beiträge die eine Frage von dir beantwortet haben, als "Antwort" (unten).
    Warum das Ganze? Hier gibts die Antwort.


    Freitag, 30. August 2019 10:24
    Moderator
  • Hallo,

    was ist das denn für ein Buch, das du da hast? Der Code ist auf die Art wirklich völlig falsch. Man kann nicht Werte in verschiedene Variablen schreiben und dann so sortieren, dass die variablenübergreifend sortiert gespeichert werden. 

    Freitag, 30. August 2019 10:58
  • naja, ich hab wie gesagt wenig / keine Ahnung und versuche erst die Basics zu verstehen

    deshalb lieber einzelne als ein Array

    auf jeden Fall danke :)

    Freitag, 30. August 2019 11:11
  • Wenn du zusammengehörige Werte speichern und verarbeiten willst, musst du auf jeden Fall ein Array nehmen. Für die Basics solltest du auch nicht gleich mit ständig anderen Zufallswerten arbeiten. Ein einfaches Beispiel für Sortieren ist:
    $array = 27, 5, 9, 3, 18, 2, 11
    $array | sort-object 

    Montag, 2. September 2019 10:03
  • > deshalb lieber einzelne als ein Array


    Ja ich verstehe den Gedanken dabei, aber einfacher macht es in dem Fall deutlich komplizierter. :)
    Als Lernbücher sind übrigens die von Tobias Weltner sehr zu empfehlen.


    Blog: http://www.bytecookie.de

    Powershell Code Manager: Link
    (u.a. Codesnippets verwalten + komplexe Scripte graphisch darstellen)

    Hilf mit und markiere hilfreiche Beiträge mit dem "Abstimmen"-Button (links) und Beiträge die eine Frage von dir beantwortet haben, als "Antwort" (unten).
    Warum das Ganze? Hier gibts die Antwort.


    Montag, 2. September 2019 10:32
    Moderator