1 Minute
Schneller Filter für Dateien
Die PowerShell räumt mit einem einzigen Befehl auf: Dateien finden, Programme starten, Skripte ausführen. Das Cmdlet "Invoke-Item" erledigt solche Aufgaben nicht nur einzeln, sondern greift auf Wunsch gleich mehrere Ziele gleichzeitig. So öffnen Sie beispielsweise alle TXT-Dateien oder Logfiles in einem Rutsch und sparen dabei wertvolle Zeit.
Das Cmdlet wählt automatisch die passende Anwendung für jeden Dateityp aus. Wer es noch kürzer mag, ersetzt "Invoke-Item" einfach durch den Alias "ii" – etwa "ii *.log" statt "Invoke-Item *.log", um alle Logfiles unter "C:\Temp" anzuzeigen. Für präzisere Filter kombinieren Sie Invoke-Item mit Get-ChildItem in der Pipeline: Der Befehl
Get-ChildItem -Path C:\Logs -Filter *.log -Recurse | Where-Object {$_.LastWriteTime -gt (Get-Date).AddDays(-7)} | Invoke-Item
öffnet beispielsweise nur Logfiles der vergangenen Woche – auch aus Unterordnern. Noch gezielter wird es mit "Select-Object": Fügen Sie "| Select-Object -First 5" vor dem Invoke-Item ein, um nur die ersten fünf Treffer zu öffnen und ein Fenster-Massaker zu vermeiden. Besonders praktisch für Administratoren ist die Kombination mit Sort-Object nach Datum oder Größe, etwa
Get-ChildItem *.xml | Sort-Object LastWriteTime -Descending | Select-Object -First 3 | Invoke-Item
für die drei neuesten Konfigurationsdateien. Testen Sie Filter aber zunächst ohne Invoke-Item, damit nicht versehentlich Dutzende Anwendungen gleichzeitig starten und das System in die Knie zwingen.