21. März 2019

Datum

PowerShell rechnet zudem super mit Datums-Variablen.

$now = Get-Date

Jetzt habe ich so groß getönt, dass man so toll mit den Zeiten rechnen kann, aber kaum macht man sowas, wird es komisch:

Normale Rechenoperatoren sind also eher unpraktisch. Dafür gibt es spezielle Operatoren die bei Variablen des Typs DateTime verfügbar sind:

  • AddDays
  • AddHours
  • AddMilliseconds
  • AddMinutes
  • AddMonths
  • AddSeconds
  • AddTicks (Keine Ahnung was das ist…)
  • AddYears

Möchte man nun also ein paar Tage hinzufügen, kann man das wie folgt:

$now.AddDays(7)

Und möchte man ein paar Tage abziehen, ruft man immer noch denselben Befehl auf, addiert jedoch „-x“:

$now.AddDays(-7)

Dasselbe gilt für alle anderen Operatoren genauso.

Man kann die einzelnen Operatoren auch in einer Zeile hintereinanderschreiben:

Um ein beliebiges Datum als Datums-Variable zu bekommen, ruft man den Befehl Get-Date auf und definiert die einzelnen Parameter:

Mehr dazu unter folgendem Artikel:

https://docs.microsoft.com/en-us/powershell/module/Microsoft.PowerShell.Utility/Get-Date?view=powershell-3.0

Zwei Variablen vom Typ DateTime lassen sich wunderbar mittel Vergleichsoperatoren vergleichen:

-gt (größer als) / -ge (größergleich)

-lt (kleiner als) / -le (kleinergleich)

Oder kombiniert, um zu sehen ob „jetzt“ zwischen 2 definierten Daten liegt.

Das Ganze lässt sich dann natürlich entsprechend weit ausbauen. Aber es sollte reichen um eine Idee zu liefern.