Powershell String to Object
#2
Geschrieben 29. Juli 2009 - 14:05
versteh ich nicht ganz. Ein String ist ein Objekt vom Typ System.String
PS C:\> $a="MCSEboard find ich gut" PS C:\> $a.length 22 #$a="MCSEboard find ich gut" #ist gleichbedeutend mit #$a=[system.string]"MCSEboard find ich gut" #die Objectmehtoden und Eigenschaften bekommst du mit PS C:\> $a | get-member TypeName: System.String Name MemberType Definition ---- ---------- ---------- Clone Method System.Object Clone() CompareTo Method System.Int32 CompareTo(Object value), System.Int32 CompareTo(String strB) Contains Method System.Boolean Contains(String value) CopyTo Method System.Void CopyTo(Int32 sourceIndex, Char[] destination, Int32 destinationIn.. EndsWith Method System.Boolean EndsWith(String value), System.Boolean EndsWith(String value, .. Equals Method System.Boolean Equals(Object obj), System.Boolean Equals(String value), Syste.. GetEnumerator Method System.CharEnumerator GetEnumerator() GetHashCode Method System.Int32 GetHashCode() GetType Method System.Type GetType() ...
Bearbeitet von blub, 29. Juli 2009 - 14:31.
Nec Cupias, Nec Metuas
#5
Geschrieben 30. Juli 2009 - 06:32
Mein Script list ein Textfile ein mit Username und Ablaufdatum. Nun bin ich in einer foreach-Schalufe und lese alle Userdaten ein
Username in die Variable $Name und das Ablaufdatum in die Variable $ExpDate.
Nun möchte ich diese Variabelwerte zwischenspeichern und danach sortiert nach $ExpDate zurückgeben.
#6
Geschrieben 30. Juli 2009 - 09:12
Ich muss wohl noch weiter ausholen:
Mein Script list ein Textfile ein mit Username und Ablaufdatum. Nun bin ich in einer foreach-Schalufe und lese alle Userdaten ein
Username in die Variable $Name und das Ablaufdatum in die Variable $ExpDate.
Nun möchte ich diese Variabelwerte zwischenspeichern und danach sortiert nach $ExpDate zurückgeben.
Wie sieht das Text File aus?
Du suchst ein Array bzw. Hash Tabelle.
#7
Geschrieben 30. Juli 2009 - 22:52
Ich muss wohl noch weiter ausholen:
Mein Script list ein Textfile ein mit Username und Ablaufdatum. Nun bin ich in einer foreach-Schalufe und lese alle Userdaten ein
Username in die Variable $Name und das Ablaufdatum in die Variable $ExpDate.
Nun möchte ich diese Variabelwerte zwischenspeichern und danach sortiert nach $ExpDate zurückgeben.
und du erwartest, dass wir aus deinem ersten und dritten Post auf diese Aufgabenstellung schliessen sollen?
Bearbeitet von blub, 31. Juli 2009 - 07:34.
Nec Cupias, Nec Metuas
#8
Geschrieben 03. August 2009 - 15:14
Wie sieht das Text File aus?
Du suchst ein Array bzw. Hash Tabelle.
Der Tipp von Dukel hat mich doch weitergebracht.
Ich habe ein TXT File:
"hans" 03.08.2009 16:50, "Test-ok" 11.04.2010 15:21, "test-Warning" 17.08.2009 13:30, "Users" 23.04.2009 18:06, "aaa" 23.04.2004 18:12, "bbbbbbb " 23.04.2006 18:38
Dieses File kann ich einlesen und ausgeben. Leider verstehe ich die Sortierung noch nicht ganz.
$UserExpTable = @()
$Users = Get-Content "Users.txt"
foreach ($line in $Users)
{
$Name = $line -match '"(.*)"'
$Name = $Matches[1]
$ExpDate = $line -match '\d{2}\.\d{2}\.\d{4}'
$ExpDate = $Matches[0]
$ExpDate = [datetime]::ParseExact($ExpDate, "dd.MM.yyyy", $null)
$UserExpTable += @{$Name="$ExpDate"}
}
$UserExpTable.GetEnumerator() | Sort-Object Valuezurück bekommen ich
Name Value ---- ----- Users 04/23/2009 00:00:00 aaa 04/23/2004 00:00:00 bbbbbbb 04/23/2006 00:00:00 hans 08/03/2009 00:00:00 Test-ok 04/11/2010 00:00:00 test-Warning 08/17/2009 00:00:00
Die Sortierung funktioniert nicht nach Name und auch nicht nach Value.
1000 Dank für eure Hilfe!










