Alte Klassiker neu aufgelegt (Teil 1)

Zu den ewigen „Shell-Klassikern“ gehört, neben Grep, mit Sicherheit das Touch-Kommando, das bei einer Datei das Datum des letzten Zugriffs anpasst. Hier ist eine kleine Funktion, die einem Touch-Befehl entspricht, und die eine gute Gelegenheit darstellt, das Prinzip der Pipeline-Verarbeitung in einer Funktion per Begin-, Process– und End-Befehlsblock und das Prinzip der Parameterübergabe zu üben:

# ----------------------------------------------------

#  Ändern des Zeitpunkt des letzten (Schreib-)Zugriffs
# ----------------------------------------------------
function global:touch-item (

 [DateTime]$Zeitpunkt = $(Throw "Es wurde kein Zeitpunkt übergeben.")
)
{
  begin
  {
   $Anzahl = 0
  }
  process
  {
    $_.LastWriteTime = get-date $Zeitpunkt
    $Anzahl++
  }
  end
  {
    switch ($Anzahl)
    {
     0 { "Keine Dateien gesetzt." }
     1 { "Eine Datei gesetzt." }
     default { "$Anzahl Dateien gesetzt." }
   }
  }
}

Schreibe einen Kommentar

Bitte logge dich mit einer dieser Methoden ein, um deinen Kommentar zu veröffentlichen:

WordPress.com-Logo

Du kommentierst mit Deinem WordPress.com-Konto. Abmelden / Ändern )

Twitter-Bild

Du kommentierst mit Deinem Twitter-Konto. Abmelden / Ändern )

Facebook-Foto

Du kommentierst mit Deinem Facebook-Konto. Abmelden / Ändern )

Google+ Foto

Du kommentierst mit Deinem Google+-Konto. Abmelden / Ändern )

Verbinde mit %s