Theweber 10 Geschrieben 23. Juni 2016 Melden Teilen Geschrieben 23. Juni 2016 Hallo Zusammen, da Powershell ja viel kann wollte ich jetzt auch mal ein bischen damit anfangen :) und zack schon das erste Problem. Google findet keine ahnung 10000 einträge wie ich ein Datum Formatiere allerdings nicht wie ich mir das vorstelle. Und zwar. Ich übergebe in mein powershell eine Variabel diese Variable enthält das Datum im Format dd.mm.jjjj 00:00:00 (Beispiel 12.06.2016 22:00:00) Wie schaffe ich es jetzt diese Variable, nenen wir Sie mal $Date umzuwandeln das aus diesem Datum immer der Folge Tag rauskommt. Also aus 12.06.2016 22:00:00 soll werden 13.06.2016 rauskommen. Dieses möchte ich dann in die Varible $Date2 übergeben. Danke für eure Hilfe Wahrscheilich ist es recht einfach aber ich finde leider nix dazu. Zitieren Link zu diesem Kommentar
Dukel 454 Geschrieben 23. Juni 2016 Melden Teilen Geschrieben 23. Juni 2016 Mit "Get-Date" kannst du ein Datum einlesen, welche dann als Datum vorliegt. Mit diesem Datum kannst du dann rechnen oder beliebig ausgeben. Zitieren Link zu diesem Kommentar
Theweber 10 Geschrieben 23. Juni 2016 Autor Melden Teilen Geschrieben 23. Juni 2016 Das mir schon klar. Aber ich will nicht das aktuelle Datum haben. Sondern wie oben schon beschrieben bekomme ich das Datum aus einen anderen programm so übergeben und muss es nun umformatieren. Zitieren Link zu diesem Kommentar
Dukel 454 Geschrieben 23. Juni 2016 Melden Teilen Geschrieben 23. Juni 2016 https://technet.microsoft.com/en-us/library/hh849887.aspx Parameters -Date<DateTime>Specifies a date and time. By default, Get-Date gets the current system date and time. Type the date in a format that is standard for the system locale, such as dd-MM-yyyy (German [Germany]) or MM/dd/yyyy (English [united States]). Get-Date nimmt nicht nur das aktuelle Datum. Zitieren Link zu diesem Kommentar
NilsK 2.934 Geschrieben 23. Juni 2016 Melden Teilen Geschrieben 23. Juni 2016 Moin, ich weiß ja nicht, wie du suchst, aber ich finde unter den ersten Suchergebnissen schnell Lösungen. Beispiele: http://www.powershellmagazine.com/2013/07/08/pstip-converting-a-string-to-a-system-datetime-object/ https://technet.microsoft.com/en-us/library/ff730960.aspx Auf die Schnelle bau ich damit: function Convert-DateString { param ( [string] $Date, [String[]] $Format ) $result = New-Object DateTime $convertible = [DateTime]::TryParseExact( $Date, $Format, [System.Globalization.CultureInfo]::InvariantCulture, [System.Globalization.DateTimeStyles]::None, [ref]$result) if ($convertible) { $result } else {'nonconvertible'} } $MyDate = '12.06.2016 22:00:00' $ConvDate = (Convert-DateString -Date $MyDate -Format 'dd.MM.yyyy HH:mm:ss') Write-Host $ConvDate $ConvDate.DayOfWeek $ConvDate.AddDays(1) Das ist dann eine sehr flexible Variante. Da dein Datum vermutlich in einem einfachen Format vorliegt, tut es auch dies: $MyDate = Get-Date '12.06.2016 22:00:00' $MyDate $MyDate.DayOfWeek $MyDate.AddDays(1) Gruß, Nils Zitieren Link zu diesem Kommentar
blub 115 Geschrieben 23. Juni 2016 Melden Teilen Geschrieben 23. Juni 2016 im Prinzip nochmal dasselbe: $datum = "13.04.2015 16:04:05" $Culture = New-Object System.Globalization.CultureInfo("de-DE") $Date = [DateTime]::parseexact($Datum,"dd.mm.yyyy HH:MM:ss",$Culture) Zitieren Link zu diesem Kommentar
MurdocX 949 Geschrieben 23. Juni 2016 Melden Teilen Geschrieben 23. Juni 2016 (bearbeitet) Also aus 12.06.2016 22:00:00 soll werden 13.06.2016 rauskommen. Dieses möchte ich dann in die Varible $Date2 übergeben. [DateTime]$Date = $(get-date) $date.ToShortDateString() # Ausgabe 1 $date2 = $date.AddDays(1) $date2.ToShortDateString() # Ausgabe 2 => Ausgabeergebnis 23.06.2016 24.06.2016 Eine weitere Variante :wink2: Oder ein Einzeiler ([DateTime]::Parse('23.06.16')).AddDays(1).ToShortDateString() bearbeitet 23. Juni 2016 von MurdocX Zitieren Link zu diesem Kommentar
Beste Lösung Theweber 10 Geschrieben 23. Juni 2016 Autor Beste Lösung Melden Teilen Geschrieben 23. Juni 2016 Danke für die Hilfe und Antworten. Nur zur Info, ich habe es dann so umgetzt. $dateout = (Get-Date "$datein").AddDays(1).ToShortDateString() $datein ist die Variable die ich übernehme. Zitieren Link zu diesem Kommentar
Dukel 454 Geschrieben 23. Juni 2016 Melden Teilen Geschrieben 23. Juni 2016 Die Anführungszeichen bei nur einer Variable kannst du weglassen. Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.