Powershell – kleine Helferlein

Ich habe mir vorgenommen, meine „Lieblings-Powershell-Kommandos“ zu dokumentieren und anderen zur Verfügung zu stellen. Die Kommandos sind vermutlich weder elegant, noch effizient – aber sie erledigen Ihren Job. Dennoch weise ich darauf hin, dass die Ausführung der Kommandos auf eigenes Risiko erfolgt – über Rückmeldungen über Funktion oder Erweiterungen/Abwandlungen würde ich mich dennoch sehr freuen.
Achtung: Der Code wird an einigen Stellen der Übersichtlichkeit halber umgebrochen angezeigt, funktioniert aber in Powershell trotzdem.

Los geht’s:

Verwaiste Computerkonten anzeigen
Computer ändern regelmäßig (i.d.R. alle 30 Tage) ihr Computerkonten-Passwort. Ein Passwort, welches älter als z.B. 90 Tage ist, ist ein Hinweis auf ein „verwaistes“ Computerkonto. Das Passwortalter lässt sich als Parameter bei AddDays() angeben – Achtung auf das negative Vorzeichen:

Get-ADComputer -filter * -Properties PasswordLastSet | 
Where {$_.PasswordLastSet -le (Get-Date).AddDays(-365) } | 
Select-Object Name,ObjectClass,PasswordLastSet

Dateigröße gruppiert nach Änderungsdatum
Manchmal benötigt man eine Statistik, welchen Umfang Dateien haben, die zu einem bestimmten Datum erstellt wurden. Das folgende Skript erledigt dies (im aktuellen Verzeichnis), ausgegeben werden die Anzal und die Summe der Dateigrößen je nach letztem Schreibzugriff:

$count = @{}
$size = @{}
get-childitem -recurse |
  foreach {
    $date = $_.lastwritetime.tostring('yyyy')
    $count[$date]++
    $size[$date] += $_.length
  }
$count.keys |
sort|
foreach {
  [PSCustomObject]@{
    Date = $_
    'Number of files' = $Count[$_]
    Size = $Size[$_]
  }
} | format-table -AutoSize 

Das Skript lässt sich auch leicht anpassen, um etwa anzuzeigen, welchen Platz bestimmte Dateitypen belegen – hierzu einfach „.lastwritetime.tostring(‚yyyy‘)“ ersetzen durch „.extension“.

Kommentar schreiben

0 Kommentare.

Kommentar schreiben


Hinweis - Du kannst dies benutzenHTML tags and attributes:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>